Дозагрузка данных в файлы .xml

25.08.21

Интеграция - Файловый обмен (TXT, XML, DBF), FTP

Искал, но не нашел /(может и не умею искать) краткое описание дозагрузки данных в .xml файл, ну и решил сделать из этого первую публикацию.

Не так давно столкнулся с ситуацией, когда надо было дозаписывать записи в документ .xml.

Сам документ ничего особого с себя не представляет, примерно такой вот структуры:

Как видим Запись XML  и несколько атрибутов, но не об этом….

Как же записать следующие записи такого типа?!

Некоторые решения ведут за собой чтение документа, перенос данных в ТЗ, к нему крепим следующую запись и потом опять создаем документ и записываем его….но…не хотел так делать и все)

Потому нашел вариант, который мне нравится и быстро работает - все через ПостроительDOM.

Не спорю, на большие количества записей он будет работать медленней, но в данной ситуации как раз по мне!

Что же нам нужно? Тут все просто, вначале прочитаем файл .xml:

ЧтениеXML = Новый ЧтениеXML;
ЧтениеXML.ОткрытьФайл(Путь + ИмяФайла);
Построитель = Новый ПостроительDOM;
Документ = Построитель.Прочитать(ЧтениеXML);
ЧтениеXML.Закрыть();

Далее найдем нужный корень структуры .xml файла в который будет дозаписывать наши строки (к) из какого то источника, будь то ТЗ, структура и т.п. (в моем случае это будет «СтрокаСчета»  в «ОстаткиБанковскиеСчета») и проведем запись новосозданной строки(к):           

ТаблицаИсточник = Запрос.Выполнить().Выгрузить();

     Корневой = Документ.ЭлементДокумента;

        Для каждого Строка Из ТаблицаИсточник Цикл

            Элемент = Документ.СоздатьЭлемент("СтрокаСчета");
            Элемент.УстановитьАтрибут("Дата", Строка(ТекущаяДата()));
            Элемент.УстановитьАтрибут("НаименованиеКомпании", Строка. Компания);
            Элемент.УстановитьАтрибут("ЕРДПОУ", Строка.КодПоЕДРПОУ);
            Элемент.УстановитьАтрибут("НазваниеБанка", Строка.Банк);
            Элемент.УстановитьАтрибут("МФО", Строка.Банк.Код);
            Элемент.УстановитьАтрибут("IBAN", Строка.НомерСчета);
            Элемент.УстановитьАтрибут("Валюта", Строка.Валюта);
            Элемент.УстановитьАтрибут("Сумма", Строка.СуммаОстаток);
            Корневой.ДобавитьДочерний(Элемент);

        КонецЦикла;

Ну и последний штрих - это записать уже отредактированный нами документ кодом типа:

ЗаписьXML = Новый ЗаписьXML;
ЗаписьXML.ОткрытьФайл(Путь + ИмяФайла);
ЗаписьDOM = Новый ЗаписьDOM;
ЗаписьDOM.Записать(Документ, ЗаписьXML);
ЗаписьXML.Закрыть();

После получаем наш файл будет выглядеть так:

Надеюсь, кому то помогло.

Тестирование проводил на упр. формах УНФ выше 1.6.10.

Выгрузка .xml файл сохранение ПостроительDOM

См. также

SALE! 10%

Перенос данных из ERP 2 / КА 2 / УТ 11 в БП 3.0

Обмен между базами 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Перенос позволяет настроить собственный обмен данными между указанными программами, альтернативный предлагаемому фирмой 1С. Перенос данных осуществляется из 1С:ERP 2 / 1С:КА 2 / 1С:УТ 11 в 1С:БП 3.0. Правила обмена оперативно обновляются при выходе новых релизов программы 1С, так что вы всегда будете иметь самую актуальную версию обработки.

38500 34650 руб.

15.04.2019    67839    175    136    

107

SALE! 15%

[ED3] Обмен для ERP 2.5, КА 2.5, УТ 11.5 БП 3.0, Розница, УНФ и других с EnterpriseData (универсальный формат обмена), правила обмена

Обмен между базами 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Россия Платные (руб)

Правила в универсальном формате обмена для ERP 2.5, КА 2.5, УТ 11.5, БП 3.0, Розница, УНФ, для последних версий конфигураций. Ссылки на другие конфигурации в описании публикации. Правила совместимы со всеми другими версиями конфигураций новыми и старыми, поддерживающими обмен в формате EnterpriseData. Не требуется синхронного обновления правил после обновления другой конфигурации, участвующей в обмене. Типовой обмен через планы обмена кнопкой Синхронизация вручную или автоматически по расписанию, или вручную обработкой.

25080 руб.

12.06.2017    133655    714    291    

384

Перенос данных из УПП 1.3 в БП 3.0. Переносятся документы (обороты за период), справочная информация и остатки

Обмен между базами 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 1С:Управление производственным предприятием 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Управленческий учет Платные (руб)

Перенос данных из 1С:Управление производственным предприятием 1.3 в 1С:Бухгалтерия предприятия 3.0 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила тестировались на конфигурациях УПП 1.3 (1.3.220.x) и БП 3.0 (3.0.147.x). Правила подходят для версии ПРОФ и КОРП.

28000 руб.

15.12.2021    19628    130    38    

88

SALE! 10%

Перенос данных из ERP 2 / КА 2 в ЗУП 3

Обмен между базами 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет Управленческий учет Платные (руб)

Обработка позволяет не только перенести все документы, справочную информацию и начальные остатки из ERP 2 или КА 2 в ЗУП 3, но и организовать регулярный перенос данных между программами 1С:ERP 2 / КА 2 и 1С:ЗУП 3. Вы можете выбрать период отбора данных и установить фильтр по организациям, чтобы выгружать только необходимую информацию. Более того, перенос оперативно обновляется при выходе новых релизов программы 1С, так что вы всегда будете иметь самую актуальную версию обработки.

48278 43450 руб.

03.12.2020    33801    79    57    

77

SALE! 10%

Перенос данных из УПП 1.3 / КА 1.1 в БП 3.0

Обмен между базами 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Управление производственным предприятием 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Перенос данных из УПП 1.3 в БП 3.0 (или из КА 1.1 в БП 3.0). Переносятся документы, начальные остатки и вся справочная информация. Есть фильтр по организации и множество других параметров выгрузки. Поддерживается несколько сценариев работы: как первичный полный перенос, так и перенос только новых документов. Перенос данных возможен в 1С: Бухгалтерию 3.0 версии ПРОФ, КОРП или базовую. Переход с "1С: Управление производственным предприятием 1.3" / "1С:Комплексная автоматизация 1.1" на "1С:Бухгалтерия предприятия 3.0" с помощью наших правил конвертации будет максимально комфортным!

43889 39500 руб.

25.02.2015    168030    288    240    

370

Перенос данных из УТ 10.3 в УТ 11.5. Переносятся документы (обороты за период), справочная информация и остатки

Обмен между базами 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 Оперативный учет 1С:Управление торговлей 10 1С:Управление торговлей 11 Россия Управленческий учет Платные (руб)

Перенос данных из 1С:Управление торговлей 10.3 в 1С:Управление торговлей 11.5 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. За основу были взяты стандартные правила переноса остатков и справочной информации. Правила тестировались на конфигурациях УТ 10.3 (10.3.87.x) и УТ 11.5 (11.5.15.x).

28000 руб.

23.07.2020    45454    193    64    

151

SALE! 10%

Перенос данных из УПП 1.3 в ЗУП 3.1 или из КА 1.1 в ЗУП 3.1

Обмен между базами 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 Сложные периодические расчеты 1С:Комплексная автоматизация 1.х 1С:Управление производственным предприятием 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет Платные (руб)

Перенос кадровых и расчетных данных и справочной информации из "1С:Комплексная автоматизация, ред. 1.1" или "1С:Управление производственным предприятием, ред.1.3" в "1С:Зарплата и управление персоналом", ред. 3.1. Правила позволяют перенести кадровые данные сотрудников за весь период ведения учета в КА 1.1 / УПП 1.3 и расчетные данные за выбранный период (минимально необходимый - 2 года). Позволяют осуществить переход на ведение учета зарплаты и кадров в программе 1С:Зарплата и управление персоналом, ред. 3.1.

50722 45650 руб.

29.10.2018    53981    52    97    

55

Перенос данных из Парус 10 в ЗГУ ред.3

Внешние источники данных Кадровый учет Файловый обмен (TXT, XML, DBF), FTP Обмен между базами 1C Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактических удержаниях, НДФЛ, вычетах, страховых взносах из базы Парус 10 учреждений в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (ЗГУ) и начать с ней работать с любого месяца года.

60000 руб.

05.10.2022    9034    8    8    

10
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. makfromkz 35 26.08.21 09:05 Сейчас в теме
Далее найдем нужный корень структуры .xml файла в который будет


Я чуток не понял, как вы найдете нужный элемент когда структура посложнее ваше?
2. BehV 14 26.08.21 10:25 Сейчас в теме
(1)
Корневой = Документ.ЭлементДокумента;
"ЭлементДокумента" - это корневой узел файла XML.

Корневой = Документ.ЭлементДокумента.ДочерниеУзлы;
"ДочерниеУзлы" - это список (массив) дочерних узлов у любого узла XML документа.

Ищем нужный нам уровень...проще почитать как работает чтение XML через ПостроительDOM, но основное я и писал, что структура не сложна, и это для меня самый простой метод)
Оставьте свое сообщение