|
v7: Файл обмена с Frontol - лишние пробелы в конце строки
MWWRuza, zgarick, Злоп, vsy, obs191, Мультук, Prog_man, 2S, Chai Nic, Гость из Мариуполя, Franchiser, Djelf
| ☑ |
0
dv-alex
01.08.25
✎
12:10
|
При формировании файла загрузки данных для кассового ПО Frontol в конце строк записываются лишние пробелы.
Есть обработка, которая формирует файл обмена по формату Атол
Пока СписокТоваров.ПолучитьСтроку() = 1 Цикл
....
//например формируется строка, которая в отладчике не имеет пробелов в конце:
СтрЗагрузки="36943;;Треуголка коричневая;Треуголка коричневая;495.00;6.000;0;0,1,1,1,1;0;;;;1;1.000;;8206;1;6;;;;0;1;0;0;200172кч;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0;0;;2;;;;;;;;;"
ФайлЗагрузки.ДобавитьСтроку(СтрЗагрузки);
...
КонецЦикла;
ФайлЗагрузки.Записать(КаталогОбмена + ИмяФайлаТоваров);
Открываю файл, нахожу эту строку: в конце дописано 2 пробела, бывает и 4.
Пробелы дописываются в разные строки в зависимости от их количества. Не зависит от номенклатуры.
Например, делаю разные наборы номенклатуры для выгрузки. В одном случае выводится 500 строк в другом 20. Несколько наименований товара содержится в обоих наборах. Пробелы дописываются в разные строки.
В чём может быть проблема? Как лечить?
|
|
1
runuts
01.08.25
✎
14:22
|
ФайлЗагрузки.ДобавитьСтроку(СокрЛП(СтрЗагрузки));
|
|
2
dv-alex
01.08.25
✎
19:54
|
Это не помогает. Проверял в отладчике. Строка не имеет пробелов в конце.
Как можно посмотреть содержимое текстового объекта ФайлЗагрузки перед записью в файл?
|
|
3
Олдж
01.08.25
✎
20:31
|
(2) ФайлЗагрузки.Показать()
|
|
4
Злопчинский
02.08.25
✎
03:02
|
Станиславский...
Ставлю на то, что код кривой или выводятся именно те данные, которые и выводятся... Потому что пустая строка и строка из пробелов визуально неразличимы...
|
|
5
Franchiser
гуру
02.08.25
✎
09:48
|
(0)
fso=СоздатьОбъект("Scripting.FileSystemObject");
file=fso.CreateTextFile(ИмяФайла, -1, 0); //создать файл, перезаписывая существующий.
file.WriteLine("Строка1");
|
|
6
MWWRuza
гуру
02.08.25
✎
13:21
|
(5) Это все прекрасно, но, ИМХО - из пушки по воробьям...
Решение в (1).
Ну не верю я, что строка без пробелов в конце, штатными средствами работы с текстами 1С, запишется в файл "криво", с непонятно откуда взявшимися пробелами...
Чудес не бывает. Правильно Злопчинский в (4) написал - или Вы что-то нам недоговариваете по коду, или просматриваете файл не тем... Смотрите Нотепад++, с показом непечатных символов... Там пробелы "точечками" отображаются, все сразу будет понятно.
|
|