Показать сообщение отдельно
Старый 15.03.2006, 10:18   #3  
Yakuza is offline
Yakuza
Участник
 
124 / 10 (1) +
Регистрация: 26.10.2004
Thumbs down
Экспорт делал стандартными средствами через dataports.
Короче, может кому поможет. Выяснил, что такие необъяснимые ошибки возникают когда размер формируемого файла достгает определенного размера (не такого уж и большого, около 250 килобайт вроде). Никак это не побороть, только два варианта:
1) Выкидывать информацию по частям в несколько файлов
2) Более правильный вариант - писать в файл данные через codeunit. Пример такого кода:

/// Ограничители поля - |, разделители - запятая
fil.TEXTMODE(TRUE);
fil.CREATE('c:\export\item.txt');
IF Item.FIND('-') THEN
REPEAT
fil.WRITE('|' + Item."No." + '|,|' + Item."Description 2" + '|,|' + Item.Description + '|,|' + Item."Inventory Posting Group" + '|,|' + FORMAT(Item."Unit Price") + '|,|' + FORMAT(Item."Price/Profit Calculation") + '|,|' + FORMAT(Item."Profit %") + '|,|' + FORMAT(Item."Costing Method") + '|,|' + FORMAT(Item."Indirect Cost %") + '|,|' + FORMAT(Item."Unit List Price") + '|,|' + Item."Tariff No." + '|,|' + FORMAT(Item.Blocked) + '|,|' + FORMAT(Item."Last Date Modified") + '|,|' + FORMAT(Item."Price Includes VAT") + '|,|' + Item."Gen. Prod. Posting Group" + '|,|' + Item."Country of Origin Code" + '|');
fil.WRITE(10);
f := fil.POS;
fil.SEEK(f-4);
UNTIL Item.NEXT = 0;
fil.CLOSE;