В прошлый раз мы с Вами обсуждали web-сервисы 1С, которые позволяют удаленно, через интернет, запрашивать данные у 1С из другой базы 1С или другой программы.
Сегодня мы поговорим как использовать веб-сервис, предоставляемый другой базой 1С, или другой программой.
WS-ссылки 1С
WS-ссылка 1С – это описание стороннего веб-сервиса по его WSDL описанию.
Это может быть веб-сервис другой базы 1С. Это может быть веб-сервис другой программы или веб-сайта.
Для нас это совершенно не важно – важно, что есть набор функций, которые мы можем вызвать через интернет.
Соответственно нам интересно – как добавить ссылку на веб-сервис и как вызывать его методы.
Добавление WS-ссылки 1С
WS-ссылки 1С это объект 1С, который расположен в конфигурации в ветке Общие/WS-ссылки 1С.
Добавление ссылки на веб сервис производится автоматически. Нажмите правой кнопкой на ветку, выберите Добавить, укажите путь к WSDL описанию веб сервиса.
В результате добавления WS-ссылки 1С будет создана автоматически такая же структура, как создается вручную при добавлении Web сервиса.
Добавление производится в конфигураторе и если у Вас используется прокси, то в вместо корректного добавления Web-ссылки Вы увидите ошибку с текстом вроде «Extra content at the end of the document».
Эта замечательная надпись может конечно обозначать и то, что она пишет – что формат XML в описании веб-сервиса не верный, но чаще всего значит просто – 1С не смогла произвести соединение с веб-сервисом, и чаще всего по причине прокси.
Ссылку на веб сервис в конфигурацию добавлять не обязательно. Возможно создавать ее динамически в момент выполнения кода на языке 1С (указав URL WSDL описания). В этом случае на импорт WSDL в момент создания объекта будет потрачено определенное время.
Настройки интернет прокси для 1С
В каталоге, где установлена 1С есть вложенный каталог CONF.
Обычно путь к нему: C:\Program files\1cv82\conf\
В этой папке может быть файл inetcfg.xml
. Под словами «может быть» подразумевается, что чаще всего его там нет. Создайте текстовый документ с таким наименованием с помощью блокнота (расширение у документа должно быть xml, а не txt).
Пример содержимого файла inetcfg.xml для указания прокси:
<InternetProxy
protocols="http=192.168.1.1:8080"
user="Windows User"
password="password"
bypassOnLocal="true"
bypassOnAddresses="127.0.0.1"
/>
Использование WS ссылки 1С
Для использования WS ссылки 1С нужно несколько параметров. Откройте добавленную WS ссылку 1С нажав на нее два раза мышкой.
- URI пространства имен – наименование указано в добавленной WS ссылке 1С в ветке
WS-ссылка/Модель данных/Пакет
- Наименование веб сервиса – указано в ветке WS ссылки
WS-ссылка/Web-сервисы/СобственноИмя
- Наименование порта – указано в ветке
WS-ссылка/Web-сервисы/СобственноИмя/ИмяПротоколаSoap
Далее в коде на языке 1С написать что-то вроде:
ВебСервис = WSСсылки.ИмяВебСервиса.СоздатьWSПрокси(URI, НаименованиеВебСервиса, НаименованиеПорта);
Значение = ВебСервис.ИмяМетодаВебСервиса();
Добавить комментарий
Для отправки комментария вам необходимо авторизоваться.