Имя: Пароль:
1C
 
Проблема с определением типа xdto
0 iceman2112
 
22.06.17
06:59
Есть такой элемент XML

<sales>
   <sale>
      Тут могут быть разные свойства
</sale>
   <sale>
      Тут могут быть разные свойства
   </sale>
</sales>

Мне из sale нужно обработать лишь часть свойств

В настройках пакета указал:
У типа sales указано только Имя свойство "sale" (Максимальное = 200, Фиксированное = Ложь, Форма = Элемент

У типа sale (Открытый = Истина, Смешанный = Истина, Упорядоченный = Ложь, Последовательный = Истина
И 4 свойства (типа число и строка)

Ну и вот такая петрушка:
Ошибка преобразования данных XDTO:
Чтение объекта типа: {http://******sales - [650,1709]
Проверка дополнительного свойства:
    форма: Текст
    имя:

Кто подскажет в чем может быть проблема?
1 Рэйв
 
22.06.17
07:13
Структура должна быть строго такой какой ожидается в приемнике. Если что не совпадет даже в мелочи оно не прочитается. Так что насчет "обработать лишь часть свойств" можешь забыть. Поля должны быть все и только такие какие ожидаются
2 iceman2112
 
22.06.17
07:18
хорошо, а можно тогда свойству "sale" какой то произвольный тип задать? а я там "свои" сам приведу к нужному типу
3 Рэйв
 
22.06.17
07:21
(2)Нет скорее всего . Типы тоже должны быть только такие какие ожидаются
4 Рэйв
 
22.06.17
07:23
Если хочешь передать только как-то по-своему, значит надо пользовать чтото другое, а не xdto
5 RomaH
 
naïve
22.06.17
07:26
(0) а пакет обязательно?
6 iceman2112
 
22.06.17
07:28
да уже все настроено на xdto, а теперь в aale новый свойства добавили
7 4St
 
22.06.17
07:36
(0) Посмотри внимательно на поле "Форма" в этих элементах: Текст, Элемент, Атрибут. Возможно, в этом проблема.
И еще, насколько помню, Комбинация флагов у типа Sale - (Открытый, Смешанный) корректно работает только тогда, когда все известные свойства описаны в схеме. Как только добавляется новый атрибут/элемент - все, парсинг XDTO падает.
Поэтому форматы, которые со временем могут расширяться, я стараюсь читать без схемы.