Фабрику XDTO не устраивают описанные в схеме элементы
Создал XDTO схему, пытаюсь прочитать XML - вылазит ошибка. Мол структура не соответствует. Сделал описание типа открытым - в результате в получаемом объекте XDTO помимо описанных мной элементов, появляются такие же, но с индексом 1. При этом атрибуты читаются нормально.
Пробовал устанавливать разные типы значений - результат не меняется.
Тестировал на платформе 8.3.9.1850.
Подскажите где искать проблему.
Пробовал устанавливать разные типы значений - результат не меняется.
Тестировал на платформе 8.3.9.1850.
Подскажите где искать проблему.
Текст = Новый ТекстовыйДокумент;
//Текст.УстановитьТекст(responseText);
Текст.Прочитать("C:\temp\XDTO_test.txt");
//
XML = Новый ЧтениеXML;
XML.УстановитьСтроку(Текст.ПолучитьТекст());
XML.ПерейтиКСодержимому();
XML.Прочитать(); // тэг message
Пока XML.Прочитать() Цикл
Если XML.Имя = "category" И XML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
ОбъектXDTO = ФабрикаXDTO.ПрочитатьXML(XML, ФабрикаXDTO.Тип("testmek", "category"));
КонецЕсли;
Если XML.Имя = "offer" И XML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
ОбъектXDTO = ФабрикаXDTO.ПрочитатьXML(XML, ФабрикаXDTO.Тип("testmek", "offer"));
КонецЕсли;
КонецЦикла;
ПоказатьПрикрепленные файлы:
XDTO_test.txt
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1) цикл нужно переделывать в любом случае.
Вот как вариант, чтение сразу всех offer:
Если XML.Имя = "category" И XML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
это никогда не сработает. В файле нет узла с именем category.
Самое главное: ФабрикаXDTO.ПрочитатьXML автоматически двигает чтение на следующий элемент.
Ну и схема не совсем соответствует читаемому файлу.
Вот как вариант, чтение сразу всех offer:
Пока XML.Прочитать() Цикл
Если XML.Имя = "offers" И XML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
ОбъектXDTO = ФабрикаXDTO.ПрочитатьXML(XML, ФабрикаXDTO.Тип("testmek", "offers"));
КонецЕсли;
КонецЦикла;
Если XML.Имя = "category" И XML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
это никогда не сработает. В файле нет узла с именем category.
Самое главное: ФабрикаXDTO.ПрочитатьXML автоматически двигает чтение на следующий элемент.
Ну и схема не совсем соответствует читаемому файлу.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот