чтение xml по схеме xsd

1. xCyrix 22.12.18 20:49 Сейчас в теме
Здравствуйте!
Помогите пожалуйста разобраться.

есть схема sxd (cheki.xsd)
есть файл xml (purchases.xml) который нужно прочитать по схеме cheki.xsd

читаю:

ТипФайлов = "purchases";
ЧтениеXML = Новый ЧтениеXML;
ЧтениеXML.ОткрытьФайл("C:\purchases.xml");

ФайлыXSD = Новый Массив();
ФайлыXSD.Добавить("c:\cheki.xsd");
ЗагрузкаФабрикаXDTO = СоздатьФабрикуXDTO(ФайлыXSD);


ТипЧеки = ЗагрузкаФабрикаXDTO.Тип("http://www.crystals.ru", ТипФайлов);
Чеки = ЗагрузкаФабрикаXDTO.ПрочитатьXML(ЧтениеXML, ТипЧеки);

СписокЧеков = Чеки.purchase;
Индекс = 0;
Чек = СписокЧеков.Получить(Индекс);

ЧтениеXML.Закрыть();

СвойствоПозицияЧека = Чек.positions.Свойства().Получить("position");
ПозицииЧека = Чек.positions.ПолучитьСписок(СвойствоПозицияЧека);

СвойствоОплатаЧека = Чек.payments.Свойства().Получить("payment");
ОплатыЧека = Чек.payments.ПолучитьСписок(СвойствоОплатаЧека);




и в крайней строке ОплатыЧека = Чек.payments.ПолучитьСписок(СвойствоОплатаЧека); получаю ошибку:

{ВнешняяОбработка.ЧтениеXML.Форма.Форма.Форма(32)}: Ошибка при вызове метода контекста (ПолучитьСписок)
ОплатыЧека = Чек.payments.ПолучитьСписок(СвойствоОплатаЧека);
по причине:
Несоответствие свойства и элемента данных XDTO:
Свойство: 'payment'
Свойство не является списковым

значит position у него является списковым, а payment вдруг перестал быть списковым!!! это как так???
Прикрепленные файлы:
cheki.xsd
purchases.xml
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. SvetlanaSchipakina 25.12.18 09:23 Сейчас в теме
а если поставить точку останова и просмотреть значение переменной?
3. AntonSm 30 29.12.18 22:19 Сейчас в теме
Присоединяюсь к пред.комменту.
Отладка должна помочь.
Может и правда нет списка.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот