1с не установлен приемник xml
Есть очень много статей о том, как работать с XSL/XSD из 1С, но все они в стиле: возьмем нашу XSD схему (простую и удбоную) или наш web-сервис и смотрите, как все легко экспортировать или импортировать. А что делать, если нам дали пачку XSD-схем со сложным взаимосвязями и изменять мы них не можем, а работать и поддерживать актуальность схем надо?
Сразу скажу, вопросы шифрования/подписи по ГОСТУ при работе с ГИС ЖКХ за рамками этой статьи и на хабре уже освещались. Хотя без подписей запросы выполнить не удастся.
Начнем с простого — скачаем пакет форматов по интеграционному взаимодействию с ГИС ЖКХ, импортируем все xsd схемы из пакета интеграций, наведем порядок переименуем все как нам удобно. В итоге получим как показано на картинке:
Ну а теперь приступим к магии. Попробуем запросить данные из справочника организаций по ОРГН. Это подсистема organizations-registry-common метод exportOrgRegist.
В hcs-organizations-registry-common-service.wsdl указано:
Спецификация из hcs-organizations-registry-common-service.wsdlНадо собрать SOAP пакет из заголовка ISRequestHeader, тела exportOrgRegistryRequest. Посмотрим их в xsd схемах спецификаций по интеграций.
Ну приступим, откроем нужные нам пакеты XDTO. Оказывается, нужные сущности являются не типами, а свойствами, как с этим работать в документации на XDTO в статьях, которые я находил, не описано, поэтому воспользуемся урокам магии:
Начнем с тела exportOrgRegistryRequest.
Напишем функцию для сбора XML-запроса:
В итоге получим запрос:
Ответ от серверов ГИС ЖКХ (СИТ-1):
Как мы видим, ответ напрямую десериализовать не получится, потому что нет такого типа в предложенных xsd схемах. Нам надо как-то пропустить часть тэгов и обработать только область ответа. На эту тему я тоже не нашел информации, но методом проб и ошибок приходим к кусочку магий:
В итоге работать можно с очень сложными xsd схемами через стандартные инструменты платформы. В целом 1С контролируют типизацию и заполнения, бывает чересчур излишне, особенно когда внутри свойства пакета используется базовый тип другого пакета, но в любом случае тип нужно привести к локальному из-за другого пространства URI. Удобно работать с десериализоваными данными, так как там всю работу на себя берет платформа. Но проверки происходят на этапе выполнения, а при написания кода платформа 1С не предоставляет никаких подсказок и проходится пользоваться сторонними утилитами, и даже при выполнении большая часть элементов находится в состоянии «Неопределено» и даже тип или его свойство можно увидеть только в спецификации.
Все другие форматы беСпроблем сохраняются. denis84 --> denis84
Сохраняете стандартно через "файл" - "сохранить как" или программно jambbadbalance --> jambbadbalance
denis84 @ Сегодня, 14:42 ,
. да стандартно, через Файл - сохранить как. неважно как сохраняю ошибка таже
на просторах интернета нашел такое:
Проблема может быть в макете. Ищите в какой области у вас выскакивает эта ошибка, найдите строчку, в которой происходит эта проблема и используйте метод "Очистить -> Все", и заведите содержимое снова.
А другие печатные формы не пробовали в ворд сохранять?
jambbadbalance --> jambbadbalanceВсе другие форматы беСпроблем сохраняются. denis84 --> denis84
Сохраняете стандартно через "файл" - "сохранить как" или программно jambbadbalance --> jambbadbalance
denis84 @ Сегодня, 14:42 ,
. да стандартно, через Файл - сохранить как. неважно как сохраняю ошибка таже
на просторах интернета нашел такое:
Проблема может быть в макете. Ищите в какой области у вас выскакивает эта ошибка, найдите строчку, в которой происходит эта проблема и используйте метод "Очистить -> Все", и заведите содержимое снова.
А другие печатные формы не пробовали в ворд сохранять?
jambbadbalance --> jambbadbalanceЧитайте также: