1.
user646807_kazako.a911
1403.11.23 17:32 Сейчас в теме
Добрый день!
Есть схема XDTO-пакета
У объекта "MessageData" есть свойство "Publisher", тип "anyType (http://www.w3.org/2001/XMLSchema)"
В ветке типы значений перечислены возможные значения "PublisherType" - "ForeignSystem", "Person"
В типах объектов определен тип "Publisher.ForeignSystem.v2"
На входе сообщение XML-строка
<MessageData xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Id>1669982</Id>
<Number>1669982</Number>
<Publisher xsi:type="Publisher.ForeignSystem.v2">
<Name>Включение сведений с использованием программно-аппаратного комплекса ЕФРСБ</Name>
</Publisher>
<MessageInfo MessageType="CompletionOfExtrajudicialBankruptcy">
<CompletionOfExtrajudicialBankruptcy>
<Text>Процедура внесудебного банкротства завершена.</Text>
<StartOfExtrajudicialBankruptcyMessageNumber>1667116</StartOfExtrajudicialBankruptcyMessageNumber>
</CompletionOfExtrajudicialBankruptcy>
</MessageInfo>
<Bankrupt xsi:type="Bankrupt.Person.v2">
<Category>
Код
SimplePerson
Показать полностью
<Description>Физическое лицо</Description>
</Category>
<Fio>
<LastName>Кощеева</LastName>
<FirstName>Наталья</FirstName>
<MiddleName>Рауэльевна</MiddleName>
</Fio>
<Inn>662703502919</Inn>
<Snils>02253405707</Snils>
<Address>Свердловская область, г. Ревда, ул. Азина, дом 60,кв 18</Address>
<Birthdate>08.09.1971</Birthdate>
<Birthplace>гор. Ревда Свердловской обл.</Birthplace>
<FioHistory>
<Fio>
<LastName>-</LastName>
<FirstName>Шакирова</FirstName>
<MiddleName>-</MiddleName>
</Fio>
</FioHistory>
</Bankrupt>
<PublishDate>2023-11-01T15:38:42.08</PublishDate>
<BankruptId>140133</BankruptId>
<MessageGUID>B52228B659D740FE8299A9006C523528</MessageGUID>
</MessageData>
Показать
При чтении фабрикой XDTO
ЧтениеСообщенияXML = Новый ЧтениеXML;
ЧтениеСообщенияXML.УстановитьСтроку(Тест);
XDTOПакетСообщение = ФабрикаXDTO.ПрочитатьXML(ЧтениеСообщенияXML);
Выходит ошибка:
Проверка дополнительного свойства:
форма: Элемент
имя: Publisher
по причине:
Тип свойства неопределен
Квалифицированное имя типа: 'Publisher.ForeignSystem.v2'
по причине:
Ошибка отображения пространства имен
Отсутствует отображение для префикса: ''
по причине:
Ошибка преобразования данных XDTO:
Чтение объекта типа: {http://www.w3.org/2001/XMLSchema}anyType - [1,208]
Проверка дополнительного свойства:
форма: Элемент
имя: Publisher
по причине:
Тип свойства неопределен
Квалифицированное имя типа: 'Publisher.ForeignSystem.v2'
по причине:
Ошибка отображения пространства имен
Отсутствует отображение для префикса: ''
'' - это две одинарные кавычки
Почему не читает XML? Вроде определяют тип <Publisher xsi:type="Publisher.ForeignSystem.v2">
- где есть, как называется?
Похоже, не хватает выражения типа
xmlns=" ..."
в атрибутах корневого элемента.
Без этого тип всех элементов будет {http://www.w3.org/2001/XMLSchema}anyType
Также неясно где определён тип "Publisher.ForeignSystem.v2".
- где есть, как называется?
Похоже, не хватает выражения типа
xmlns=" ..."
в атрибутах корневого элемента.
Без этого тип всех элементов будет {http://www.w3.org/2001/XMLSchema}anyType
Также неясно где определён тип "Publisher.ForeignSystem.v2".
3.
user646807_kazako.a911
1404.11.23 11:26 Сейчас в теме
Схема обмена с сервиса ЕФРСБ, файл прикрепил. В 1С не загружалась, вылетала с ошибкой, поэтому добавил в заголовок targetNamespace="efrsb", может из-за этого ошибка.
В схеме свойство Publisher тип AnyType,
Но есть еще (я так понял что это фасет) перечисление PublisherType где описаны все возможные типы Publisher,
Пробовал в свойстве Publisher менять тип AnyType на тип PublisherType, но безрезультатно
Свойство Publisher может быть нескольких типов. Где в XML схеме должно быть указание типа свойства?
В данном примере тип определяют в теге <Publisher xsi:type="Publisher.ForeignSystem.v2">
4.
user646807_kazako.a911
1404.11.23 11:39 Сейчас в теме
Взлетело после корректировки
<Publisher xsi:type="Publisher.ForeignSystem.v2">
<Publisher type="Publisher.ForeignSystem.v2">
Видимо xsi - пространство имен, которое задавалось в XDTO пакете, в нем нет этого типа Publisher.ForeignSystem.v2