XDTO и корневые свойства пакетов #757387


#0 by HomoAlbus
Добрый день, коллеги. Пишу данные в xml используя xsd схему, в ней есть такая штука: ... Дальше работаю с XDTO как обычно: После чего пишем его в XML. Все чудесно, кроме одной проблемы - имя корневого элемента. Сейчас сериализатор пишет имя корневого элемента следующим образом: <CategoriesRequest бла-бла нэймспэйсы> Тогда как сервис требует, что бы имя корневого элемента было: как в element в схеме: <categoriesRequest бла-бла нэймспэйсы> Т.е. разница в регистре первого символа. Мне кажется, что я что-то делаю не так, но не пойму что. categoriesRequest в пакетах представлен как корневой элемент с типом СвойствоXDTO. Если получить тип по нему и снова записать объект с этим типом в XML, то имя корневного элемента также с заглавной буквы... Буду рад любой помощи, спасибо заранее.
#1 by Serginio1
#2 by Serginio1
#3 by HomoAlbus
Спасибо за ссылки, но нам не моя проблема, насколько я могу судить.
#4 by Serginio1
Прошу прощения. Не разобрался. По схеме есть КорневоеСвойство с типом  CategoriesRequest. А записываться в файл будет имя типа
#5 by Serginio1
Хотя Корневые объекты – перечень корневых объектов пакета XDTO. Представляет собой объявления объектов/значений, которые могут являться корневыми элементами документов XML, принадлежащих URI пространства имен данного пакета XDTO.
#6 by Serginio1
Синтаксис: ЗаписатьXML(<ЗаписьXML>, <Элемент>, <ЛокальноеИмя>, <URIПространстваИмен>, <Форма>, <УказаниеТипа>) Параметры: Тип: ЗаписьУзловDOM, ЗаписьFastInfoset, ЗаписьXML. Объект записи XML. Тип: Строка. Локальное имя записываемого элемента данных. Тип: Строка. URI пространства имен записываемого элемента данных. Тип: ФормаXML. Форма представления элемента данных в XDTO. Значение по умолчанию: Элемент. <УказаниеТипа> (необязательный) Тип: НазначениеТипаXML. Вариант назначения типа элемента данных XDTO. Значение по умолчанию: Неявное. Описание: Записывает указанный элемент данных XDTO в объект записи XML.
#7 by HomoAlbus
Аве Миста, Аве Serginio1 ! Кланяюсь в землю, все получилось! Огромное спасибо.
#8 by Fragster
а если в пакете у типа указать локальное имя?
#9 by HomoAlbus
Схемой я не владею, получаю по WS. Как правильно отметил Serginio1 по дефолту имя объектаXDTO записываемого в XML = имени типа. Поэтому нужно заполнять третий параметр при записи. В общем все получилось и всем спасибо.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С