Получение и обработка данных от веб-службы SOAP
Задача
Получить от веб-службы ЦБ РФ данные курса валюты на определенную дату и разобрать полученные данные по структуре для дальнейшего использования (например, для вставки и обновления строк Колибри).
Исходные данные
Перед тем как приступить к решению задачи, обратимся к описанию веб-службы ЦБ РФ. Среди методов веб-службы найдем нужный, Получение динамики ежедневных курсов валюты (как XMLDocument), и перейдем к его описанию, далее оно потребуется для настройки процесса.
Сценарий решения задачи
Решение задачи будет заключаться в создании процесса, который будет включать следующие шаги:
- Отправка запроса в веб-службу.
- Обработка полученных данных от веб-службы с помощью узла "Таблица XPath".
Используемые узлы
Построение и настройка процесса
- Создадим и сохраним новый процесс.
- Для получения данных из веб-сервиса в формате XML документа добавим в процесс узел Веб-служба SOAP.
У узла Веб-служба SOAP установим название "Веб-служба ЦБ РФ. Курс валют" и настроим свойства в соответствии с описанием метода веб-службы.
Свойство Значение Название Веб-служба ЦБ РФ. Курсы валют Адрес сервера https://www.cbr.ru
Адрес веб-службы /DailyInfoWebServ/DailyInfo.asmx
Пространство имён http://web.cbr.ru/
Метод (SOAP Action) GetCursDynamicXML
Данные <GetCursDynamicXML xmlns="http://web.cbr.ru/"><FromDate>2019-06-01</FromDate><ToDate>2019-06-02</ToDate><ValutaCode>R01010</ValutaCode></GetCursDynamicXML>
Выполним проверку процесса, при наличии ошибок исправим их.
- Запустим процесс в отладке для просмотра результатов узла "Веб-служба ЦБ РФ. Курсы валют". Запрашиваемые данные получены.
- Запрашиваемые данные получены в формате XML документа. Для их обработки добавим в процесс узел Таблица XPath и соединим его входной порт с выходным портом №1 узла "Веб-служба ЦБ РФ. Курсы валют".
- У узла "Таблица XPath" установим название "Курс валют" и настроим свойства, исходя из того, что данные пришли в элементе XML документа
ValuteCursDynamic
. - Выполним проверку процесса, при наличии ошибок исправим их.
- Запустим процесс в отладке для просмотра результатов узла "Курс валюты".
Обрабатываемый XML документ содержал 1 элементValuteCursDynamic
, который преобразован в строку выходной таблицы. - Далее полученная из узла "Курс валюты" таблица с данными может быть обработана с помощью других узлов, а данные записаны в хранилище.