// Сериализация через XDTO;
// 1. Создаем объект ЗаписьXML;
ЗаписьXML = Новый ЗаписьXML;
// 2. Указываем путь к сохраненному файлу;
ЗаписьXML.ОткрытьФайл(Объект.ПутьКФайлу + "\ВыгруженныеОбъекты.xml", "UTF-8");
// 3. Записываем объявление типа: <?xml version="1.0" encoding="UTF-8"?>;
ЗаписьXML.ЗаписатьОбъявлениеXML();
// 4. Записываем название корневого элемента;
ЗаписьXML.ЗаписатьНачалоЭлемента("РеализацияТоваров");
//для того чтобы пространства имен не объявлялись сериализатором в кажом элементе, пишем их в корневой элемент
//они будут работать на все вложеные элементы
//пространство имен по-умолчанию
ЗаписьXML.ЗаписатьСоответствиеПространстваИмен("", "http://v8.1c.ru/8.1/data/enterprise/current-config");
//пространства имен остальные префиксы
ЗаписьXML.ЗаписатьСоответствиеПространстваИмен("xsd", "http://www.w3.org/2001/XMLSchema");
ЗаписьXML.ЗаписатьСоответствиеПространстваИмен("xsi", "http://www.w3.org/2001/XMLSchema-instance");
// 5. Сериализуем именно объекты (ссылки сериализуются по другому), что "ДОСТУПНО", то и сериализуется;
Для каждого ТекСтрока Из ТаблицаДокументов Цикл
СериализаторXDTO.ЗаписатьXML(ЗаписьXML, ТекСтрока.Ссылка.ПолучитьОбъект());
КонецЦикла;
// 6. Конец корневого элемента;
ЗаписьXML.ЗаписатьКонецЭлемента();
// 7. Обязательно закрываем запись;
ЗаписьXML.Закрыть();
Заменить ссылки на навигационные
Сериализация массива объектов в xml (файл)
Установить элемент отбора динамического списка
КодСериализацииОбъектаАдресации (БСП)
ТипОбъектаПоКодуСериализации (БСП)
Запуталась в Элементах и Объектах
#1, 02 мая 2023 11:21
Спасибо!
А как этот xml обратно загрузить? Это возможно?
#2, 06 мая 2023 22:18
(1) Baiji, да, конечно, можно десериализовать с помощью Объекта XDTO;
ФабрикаXDTO.ПрочитатьXML(<ЧтениеXML>, <Тип>), путь к файлу с данными XML уже указываем в объекте встроенного языка - ЧтениеXML;