Консультант по 1С в Крыму. +7(978)857-2035

Помогу с 1С!

программист 1С Симферополь

Позвоните:
+7(978)857-2035

Импорт и экспорт из 1С в файл формата XML

/ Просмотров: 50245

Экспорт данных в файл формата XML

//процедура выгружает элементы справочника "Физические лица" в файл формата XML

Процедура Лица_Выгрузить()

     //справочник

     С=СоздатьОбъект("Справочник.Лица");

     //анализатор

     Анализатор=СоздатьОбъект("AddIn.XMLParser");

     Корень=Анализатор.СоздатьДокумент();

     //данные

     Данные=Корень.СоздатьПодчиненныйЭлемент("Данные");

     Данные.УстановитьАтрибут("Дата",ТекущаяДата());

     Данные.УстановитьАтрибут("Время",ТекущееВремя());

     Данные.УстановитьАтрибут("Автор",гПользователь.Наименование);

     //наполнение

     Группа=Данные;

     С.ВыбратьЭлементы();

     Пока С.ПолучитьЭлемент()=1 Цикл

          Если С.ЭтоГруппа()=1 Тогда

               Группа=Данные.СоздатьПодчиненныйЭлемент(С.Наименование);

          Иначе

               Э=Группа.СоздатьПодчиненныйЭлемент("Лицо");

               Э.Значение=С.Код;

               Э.УстановитьАтрибут("Наименование",С.Наименование);

          КонецЕсли;

     КонецЦикла;

     //запись

     Корень.Записать("C:\People.xml");

     Предупреждение("ОК");

КонецПроцедуры

 

Импорт данных из файла формата XML

//процедура формирует печатную таблицу с данными, содержащимися в файле формата XML

Процедура Сформировать()

     Перем Файл,Каталог;

     Если ФС.ВыбратьФайл(0,Файл,Каталог,"Открытие документа XML","Документы XML|*.xml")=0 Тогда

          Возврат;

     КонецЕсли;

     //таблица

     Т=СоздатьОбъект("Таблица");

     Т.ИсходнаяТаблица("");

     Т.ВывестиСекцию("Шапка");

     //документ

     Анализатор=СоздатьОбъект("AddIn.XMLParser");

     Д=Анализатор.СоздатьДокумент();

     Д.Загрузить(Каталог+Файл);

     //узлы

     Узел=Д.ВыбратьУзел("Данные");

     Для i=1 По Узел.КоличествоПодчиненных() Цикл

          ТекУзел=Узел.ПолучитьПодчиненныйПоНомеру(i);

          Состояние(ТекУзел.Текст);

          //строка

          тЭлемент=ТекУзел.Наименование;

          тЗначение=ТекУзел.Значение;

          Т.ВывестиСекцию("Строка");

     КонецЦикла;

     //таблица

     Т.Опции(1,1,1,0);

     Т.ПовторятьПриПечатиСтроки(1,1);

     Т.ТолькоПросмотр(1);     Т.Показать("XML");

КонецПроцедуры

 

Комментариев: 4 RSS

Сам ты кривожопый и скудоумный. Всё работает.

Давайте не будем переходить на личности, а то комментарии придется потереть

Оставьте комментарий!

grin LOL cheese smile wink smirk rolleyes confused surprised big surprise tongue laugh tongue rolleye tongue wink raspberry blank stare long face ohh grrr gulp oh oh downer red face sick shut eye hmmm mad angry zipper kiss shock cool smile cool smirk cool grin cool hmm cool mad cool cheese vampire snake excaim question

Используйте нормальные имена. Ваш комментарий будет опубликован после проверки.

Вы можете войти под своим логином или зарегистрироваться на сайте.

(обязательно)