Элемент процесса [Вызвать веб-сервис]
Элемент процесса [Вызвать веб-сервис] используется для вызова методов веб-сервиса и обработки ответа в рамках бизнес-процесса. Перед использованием элемента необходимо настроить интеграцию веб-сервисов в разделе [Веб-сервисы] дизайнера системы.
Функциональность элемента [Вызвать веб-сервис] зависит от веб-сервиса, с которым была настроена интеграция. Например, элемент можно использовать для получения последних данных о курсе валют (Рис. 103).
Важно
Детальные инструкции по настройке интеграции с веб-сервисом “http://fixer.io/” приведены в отдельной статье. Подробнее >>>
При активации входящего потока элемент [Вызвать веб-сервис]:
Выполняет вызов необходимого метода веб-сервиса с помощью специальных параметров вызова.
Ожидает отклика веб-сервиса согласно настроек интеграции.
Записывает результаты в свои исходящие параметры.
Активирует исходящие потоки.
Настройка параметров элемента [Вызвать веб-сервис]
Для интеграции веб-сервиса в бизнес-процесс добавьте элемент [Вызвать веб-сервис] в рабочую область дизайнера процессов, выберите веб-сервис и метод, который необходимо вызвать, и укажите значения параметров на панели настройки элемента (Рис. 102).
[Какой сервис вызывать?] Например, если предварительно была настроена интеграция с сервисом обмена валют “Fixer”, то ее можно будет выбрать в этом поле. Нажмите кнопку , чтобы открыть страницу интеграции нового сервиса. На странице можно настроить интеграцию с новым веб-сервисом. Если сервис уже выбран, нажмите кнопку , чтобы открыть страницу настройки интеграции с выбранным веб-сервисом.
[Какой метод вызывать?] — выберите метод веб-сервиса, который будет вызван при выполнении запроса сервиса. Возможные значения этого параметра зависят от специфики интеграции сервиса.
[Максимальное время выполнения, секунд] — ограничение общего времени вызова веб-сервиса данным элементом. Ограничение включает повторы. Когда время выполнения превышено и приходят отклики с кодом ошибки (например 400), исходящие параметры будут заполнены последним полученным откликом веб-сервиса.
[Параметры вызова] — если выбранный метод имеет параметры вызова, то они будут доступны в этой группе после выбора метода. В бизнес-процессе эти параметры считаются входящими параметрами соответствующего элемента [Вызвать веб-сервис].
Например, согласно параметрам настройки интеграции с сервисом http://fixer.io/, доступны следующие параметры вызова:
-
[Базовая валюта] — базовая валюта для получения обменных курсов.
-
[API ключ] — API-ключ веб-сервиса. Для его получения необходимо зарегистрироваться на https://fixer.io/.
-
[Конечная точка] — конечная точка веб-сервиса, которая будет добавлена сразу после URI и перед параметрами запроса. В примере для http://fixer.io/ может быть либо “latest” — для запроса последних доступных курсов, либо конкретная дата в текстовом формате — для запроса обменных курсов на эту дату, например “2018-01-03”. Все параметры, кроме параметров типа “Параметр запроса”, обязательны для заполнения. Если поле останется незаполненным, параметры запроса все еще будут частью запроса, но не будут иметь значений. Например: “?параметр-со-значением-1=значение-1&параметр-без-значения-1&параметр-без-значения-2”.
На заметку
Можно ввести значения параметра запроса вручную или привязать их к другим параметрам процесса. Работа со значениями параметров рассмотрена в отдельной статье. Подробнее >>>
Работа с параметрами вызова типа “коллекция“
Если параметр вызова является коллекцией (установлен признак [Является массивом] в свойствах параметра на странице веб-сервиса), то список вложенных параметров отображается под названием коллекции на панели настройки элемента (Рис. 105). Так, сервис “пакетных запросов” Creatio позволяет добавлять несколько записей (например, контактов) в систему. Для этого сервису потребуются данные для заполнения полей каждой добавляемой записи (например, ФИО и тип контакта). Нужные значения можно передать в качестве параметра вызова типа “коллекция“, где “ФИО” и “Тип” будут вложенными параметрами, а каждый элемент коллекции будет содержать данные для отдельной записи контакта
Значения параметров коллекции элемента [Вызвать веб-сервис] могут быть сопоставлены с вложенными параметрами другой коллекции элемента [Читать данные] или [Вызвать веб-сервис] (Рис. 106, Рис. 107).
Параметры коллекции элемента процесса могут быть сопоставлены с параметром процесса типа “Коллекция значений” (Рис. 108).
Обработка ошибок вызова веб-сервисов
После активации элемент [Вызвать веб-сервис] выполняет вызов веб-сервиса, получает и обрабатывает отклик и заполняет исходящие параметры. У каждого элемента [Вызвать веб-сервис] есть два исходящих параметра для обработки ошибок — [Success] и [Http status code].
-
Если вызов завершился успешно (код отклика < 400), то параметру [Success] будет установлено значение “true”.
-
Если вызов завершился с ошибкой (код отклика 400 и выше), то параметру [Success] будет установлено значение “false” и параметр [Http status code] будет заполнен кодом ошибки. Используйте эти параметры для обработки ошибок вызова веб-сервисов непосредственно в процессе. Например, вы можете автоматически вызвать веб-сервис позже, использовать другие значения параметров вызова или прекратить процесс.
Работа с откликом веб-сервиса
Каждый параметр отклика, который вы настроили для метода веб-сервиса, будет добавлен в качестве дополнительного исходящего параметра в элемент [Вызвать веб-сервис], где этот метод выбран в свойстве [Какой метод вызывать?].
Для использования этих данных в вашем бизнес-процессе свяжите процесс и параметры элементов процесса с исходящими параметрами элемента [Вызвать веб-сервис].
Пример
При выборе веб-сервиса “Fixer” у элемента [Вызвать веб-сервис] в дополнение к параметрам обработки ошибок появятся следующие исходящие параметры: “Базовая валюта” (параметр “строка”), “Дата” (параметр “дата”) и отдельный дробный параметр на каждый обменный курс (“RatesAUD”, “RatesEUR” и т.д.). Полученные данные можно отобразить при помощи преднастроенной страницы, связав ее поля с соответствующими исходящими параметрами элемента [Вызвать веб-сервис] (Рис. 109, Рис. 110). В результате поля страницы () будут содержать данные, полученные в отклике веб-сервиса.
На заметку
Порядок действий для отображения данных, полученных от веб-сервиса, подробно рассмотрен в статье “Проверка работы интеграции с веб-сервисом”. Детальнее работа со значениями параметров рассмотрена в статье “Как работать со значениями параметров элементов”.
Работа с параметрами ответа типа “коллекция”
Параметры ответа веб-сервиса могут быть коллекциями. Параметры ответа настраиваются в расширенном режиме на вкладке [Параметры] панели настройки свойств элемента [Вызвать веб-сервис] (Рис. 111). Вложенные параметры коллекции отображаются под названием коллекции.
Значения параметров коллекции элемента [Вызвать веб-сервис] могут быть сопоставлены с вложенными параметрами другой коллекции элемента [Читать данные] или [Вызвать веб-сервис](Рис. 106, Рис. 107). Дополнительно, каждое значение коллекции может быть сопоставлено с отдельным экземпляром подпроцесса при настройке элемента [Подпроцесс]. Больше информации об использовании коллекций данных доступно в статье “Работа с коллекциями данных”.
Важно
Элемент [Вызвать веб-сервис] может создавать древовидные коллекции. Элемент [Подпроцесс] может обрабатывать только плоские структуры. При работе с многоуровневой коллекцией элемент [Подпроцесс] получит верхнеуровневые параметры и не сможет получить параметры высокой вложенности.
Смотрите также
•Элемент процесса [Изменить права доступа]
•Элемент процесса [Задание-сценарий]
•Элемент процесса [Привязать процесс к объекту]
•Элемент процесса [Выполнить действие процесса]