Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
11 дек 2024, 22:28

Некорректное открытие текстового файла

Автор gamograff, 16 июл 2015, 11:39

0 Пользователей и 1 гость просматривают эту тему.

gamograff

Добрый день. Процедура должна открывать файл .txt и обрабатывать текст. Сам файл находит правильно, но при попытке открыть выдаётся ошибка:
ТФ.Открыть(Запр);
{Глобальный модуль(49)}: Неверное имя файла!
При записи вместо "Запр" полного пути также не открывается. На 7.7 совсем недавно, поэтому прошу прощения за возможно глупый вопрос.
фс.УстТекКаталог("C:\Message");

Запр = фс.НайтиПервыйФайл("Запрос*.txt");

Пока фс.СуществуетФайл (Запр) = 1 цикл
 
сообщить(Запр);
                         
  ТФ = СоздатьОбъект ("Текст");

  ТФ.Открыть(Запр);
 
  СтрФайла = СтрПолучитьСтроку(ТФ,1) + СтрПолучитьСтроку(ТФ,2) + СтрПолучитьСтроку(ТФ,3);
 
  сообщить(СтрФайла); //здесь выводится только слово "Текст"
 
КК = Найти (СтрФайла, "Код клиента") + 2;
КФ = Найти (СтрФайла, "Код фирмы") + 2;
КТ = Найти (СтрФайла, "Код товара") + 2;

КодФирмы   = Сред(СтрФайла, КФ, 4);
КодКлиента = Сред(СтрФайла, КК, 4);
КодТовара  = Сред(СтрФайла, КТ, 4);
                                 
Результат = глСоздатьНовыйСчет(КодФирмы, КодКлиента, КодТовара);

КодПисьма = Сред(Запр, 7, 15);
                         
ТФ.ДобавитьСтроку(Результат);
ТФ.Записать("Счёт" + КодПисьма + ".txt"); //Этот файл не записывается, мне кажется, из-за некорректного открытия "Запр"

фс.ПереименоватьФайл(Запр,"$"+Запр, 1);

  Запрос = фс.НайтиСледующийФайл();

  КонецЦикла;

fipolaz


Процедура Сформировать()
ТФ=СоздатьОбъект("Текст");
ФС.УстТекКаталог("C:\Message");
Запр=ФС.НайтиПервыйФайл("Запрос*.txt");
Пока ФС.СуществуетФайл(Запр)=1 Цикл
// Сообщить(Запр);
  ТФ.Открыть(Запр);
  // СтрФайла=СтрПолучитьСтроку(ТФ,1) + СтрПолучитьСтроку(ТФ,2) + СтрПолучитьСтроку(ТФ,3);
  СтрФайла=ТФ.ПолучитьСтроку(1)+ТФ.ПолучитьСтроку(2)+ТФ.ПолучитьСтроку(3);
  // Сообщить(СтрФайла); //здесь выводится только слово "Текст"
КК=Найти(СтрФайла,"Код клиента")+2;
КФ=Найти(СтрФайла,"Код фирмы")+2;
КТ=Найти(СтрФайла,"Код товара")+2;

КодФирмы   =Сред(СтрФайла,КФ,4);
КодКлиента =Сред(СтрФайла,КК,4);
КодТовара  =Сред(СтрФайла,КТ,4);
                                 
Результат=глСоздатьНовыйСчет(КодФирмы,КодКлиента,КодТовара);

КодПисьма = Сред(Запр,7,15);
                         
ТФ.ДобавитьСтроку(Результат);
ТФ.Записать("Счёт"+КодПисьма+".txt"); //Этот файл не записывается, мне кажется, из-за некорректного открытия "Запр"

ФС.ПереименоватьФайл(Запр,"$"+Запр,1);

// Запрос = фс.НайтиСледующийФайл();
Запр=ФС.НайтиСледующийФайл();
КонецЦикла;
КонецПроцедуры

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск