Версия для печати темы (https://pro1c.org.ua/index.php?s=6c99c0f28a5e45684617abef94d6e13f&showtopic=17777)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование обычных форм 1С 8.2 и не интерфейсной логики _ Нужен пример алгоритма загрузки из ТХТ файла

Автор: VOVIAL 01.05.14, 8:06

А можете привести пример алгоритма загрузки из одного ТХТ файла, двух разных документов. структура ТХТ файла примерно такая:
//начало файла
#CHEK#
№ДОК;ДатаДок;Су ммаДок
#TABLE#
КодТовара;КолТо вара;ЦенаТовара ;НДС
КодТовара;КолТо вара;ЦенаТовара ;НДС
#END_CHEK#
#PRIH#
№ДОК;ДатаДок;Су ммаДок
#TABLE#
КодТовара;КолТо вара;ЦенаТовара ;НДС
КодТовара;КолТо вара;ЦенаТовара ;НДС
#END_PRIH#
//КонецФайла


 ! 

Правила, п.3., 6
 

Автор: Ardi 01.05.14, 15:16

VOVIAL,
200 баксов.

Автор: logist 01.05.14, 18:55

В той теме алгоритм был написан, если есть конкретные вопросы - задавайте.

Автор: vadim007 05.05.14, 9:33

Файл = ОткрытьФайл("Файл.txt");
Начало = "";
Пока Не КонецФайла(Файл) Цикл
   Строка = Файл.ТекущаяСтрока();
   Если Начало = "" Тогда
      Начало = Строка;
      НовыйДокумент(Начало);
      Начало = Прав(Начало, СтрДлина(Начало)-1);
      // Инициировать шапку документа
   ИначеЕсли Строка = "#END_"&Начало Тогда
      СохранитьДокумент(Начало);
   ИначеЕсли Строка = "#TABLE#" Тогда
      // Инициировать табличную часть
   Иначе
      // Обработка табличной части
   КонецЕсли;
КонецЦикла;

Автор: Batchir 08.05.14, 8:52

Я бы написал обработку с двумя табличными частями, в первую загрузил данные по загружаемым документам, во вторую их табличные части.
Во время загрузки таблицы документов находил соответствия этих доков в БД.
Во время загрузки табличных частей находил соответствия номенклатуры (ну и прочих данных если это необходимо) в БД.

Далее ... если какая-то справочная информация не найдена, то загрузку не производить до тех пор пока не будет установлено соответствие.

Далее ... если загружаемый документ уже присутствует в системе, то анализировать состав ТЧ документа и состав ТЧ загружаемых данных. Т.к. он мог быть изменен как в 1С, так и в системе из которой выгружается, то необходимо принять решение о том нужно его грузить или нет.

В результате перед загрузкой в БД будем иметь:
1. Визуальное представление данных файла
2. Анализ соответствия загружаемой справочной информации
3. Контроль загружаемых документов (тут можно дальше развивать, если есть необходимость)

После того как пройдут все проверки жмем кнопку "Сделать хорошо" и по данным табличных частей формируются (обновляются)
документы БД.

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua