|
Ошибка проверки модели XDTO: xdto-valueType-6.1 (определение анонимного типа) | ☑ | ||
---|---|---|---|---|
0
fantomrik
22.10.18
✎
13:13
|
Коллеги, привет!
Пытаюсь создать фабрику из файла схемы, получаю ошибку {ВнешняяОбработка.СозданиеXMLДоверенности.Форма.Форма.Форма(10)}: Ошибка при вызове метода контекста (СоздатьФабрикуXDTO) МояФабрикаXDTO = СоздатьФабрикуXDTO(ФайлыXSD); по причине: Ошибка проверки модели XDTO: xdto-valueType-6.1 (определение анонимного типа) свойство: КНД (определение анонимного типа) свойство: Документ (определение анонимного типа) свойство: Файл пакет: http://www.1c.ru/demos/products2 Атомарная модель содержания не соответствует определению типа значения Погуглил, вроде как проблема неописанного типа, но здесь он вроде описан. Падает с ошибкой на месте (если его закоментировать все ок становится): <xs:attribute name="КНД" use="required"> <xs:annotation> <xs:documentation>Код формы по КНД</xs:documentation> </xs:annotation> <xs:simpleType> <xs:restriction base="КНДТип"> <xs:enumeration value="1167005"/> </xs:restriction> </xs:simpleType> </xs:attribute> ниже в схеме есть описание типа <xs:simpleType name="КНДТип"> <xs:annotation> <xs:documentation>Код из Классификатора налоговой документации</xs:documentation> </xs:annotation> <xs:restriction base="xs:string"> <xs:length value="7"/> <xs:pattern value="[0-9]{7}"/> </xs:restriction> </xs:simpleType> Так же пробовал описание атрибута сделать как <xs:attribute name="КНД" type="КНДТип" use="required"> но все равно ошибка |
|||
1
fantomrik
22.10.18
✎
13:15
|
давно кстатит хотел спросить но забывал - на данном форуме вручную я могу контролировать форматирование code или типа того? автоматом не очень получается у форума.
|
|||
2
fantomrik
22.10.18
✎
14:50
|
Закомментировал описание типа и значение, теперь прочитывает без ошибок
<xs:attribute name="КНД" type="КНДТип" use="required"> <xs:annotation> <xs:documentation>Код формы по КНД</xs:documentation> </xs:annotation> <!-- <xs:simpleType> <xs:restriction base="КНДТип"> <xs:enumeration value="1167005"/> </xs:restriction> </xs:simpleType> --> </xs:attribute> |
|||
3
fantomrik
22.10.18
✎
14:57
|
Теперь другой вопрос возник, я не могу понять как мне создать xml по данной xsd (https://yadi.sk/d/vNIqb2Cpru_z-w)
В отдельности создать элементы составных типов (СвЮрЛицо, СвФизЛицо, АдрРФТип и т.п.) я понимаю как ФайлыXSD = Новый Массив(); ФайлыXSD.Добавить("D:\ON_DOV_1_890_00_05_01_01.xsd"); МояФабрикаXDTO = СоздатьФабрикуXDTO(ФайлыXSD); Тип1 = МояФабрикаXDTO.Тип("http://www.1c.ru/demos/products2", "СвЮрЛицо"); СвЮрЛицо = МояФабрикаXDTO.Создать(Тип1); ... но у меня основной элемент схемы "Файл" с вложенными элементами, как его создать и заполнить не понимаю. Подскажите пожалуйста знатоки! |
|||
4
fantomrik
22.10.18
✎
15:01
|
точнее по моей xsd
Тип1 = МояФабрикаXDTO.Тип("http://testidze";, "СвЮрЛицо"); СвЮрЛицо = МояФабрикаXDTO.Создать(Тип1); |
|||
5
Cyberhawk
22.10.18
✎
15:08
|
"не могу понять как мне создать xml по данной xsd" // Берешь Altova XML Spy, кормишь ей XSD, генерируешь демо-XML. Если в Альтове все хорошо, тогда уже можно пробовать в 1С повторять.
|
|||
6
fantomrik
22.10.18
✎
15:21
|
(5) а как это сделать? Altova XML Spy, xsd ним открыл, пишет файл валидный.
|
|||
7
fantomrik
22.10.18
✎
15:31
|
В 1с схема у меня подгружается как пакет XDTO, "Файл" получатся как составное свойство пакета.
|
|||
8
Cyberhawk
22.10.18
✎
15:46
|
На твоем месте Я бы уже морально готовился отказаться от создания фабрики без пре-обработки xsd-файлов...
|
|||
9
fantomrik
22.10.18
✎
16:14
|
Вроде разобрался, немного другим кодом надо было воспользоваться (взял отсюда http://forum-1c.ru/index.php?topic=48037.0)
Было и не работало https://hostingkartinok.com/show-image.php?id=9d6246915596a131e87afc6d5658cdf4 Стало и заработало https://hostingkartinok.com/show-image.php?id=14e783ac059b2b9201a5f712144ca680 |
|||
10
Cyberhawk
22.10.18
✎
16:18
|
Да, бывают схемы без явного описания типов, а просто с перечислением объектов
|
|||
11
fantomrik
22.10.18
✎
16:21
|
(10) ну я всего разок сталкивался с XDTO и то года 2-3 назад, забыл все, а тут еще такая подлянка с перечислением просто. Ну теперь вроде разберусь дальше.
Спасибо всем не равнодушным за помощь! |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |