Отримання інформації за суб’єктом в ЄДР: Search Subjects Edr Registry
1. Загальна інформація
Для спрощення моделювання бізнес-процесів розроблені типові інтеграційні конектори для отримання інформації з ЄДР[1], налаштування яких відбувається на схемах бізнес-процесів у додатку Camunda Modeler.
- Наразі імплементовано 2 типи конекторів для отримання даних із ЄДР:
-
-
Інтеграційний конектор
searchSubject— призначений для отримання інформації про суб’єкт за кодом ЄДРПОУ або РНОКПП (раніше — ІПН). -
Інтеграційний конектор
subjectDetails— призначений для отримання деталізованої інформації про суб’єкт за ID.
-
2. Налаштування делегата
Розширення Search Subjects Edr Registry — делегат для виклику зовнішнього SOAP-сервісу, призначений для отримання інформації про суб’єкт за кодом ЄДРПОУ або РНОКПП (раніше — ІПН), який налаштовується за допомогою шаблону Search Subjects Edr Registry (searchSubjectsEdrRegistryConnectorDelegate.json).
-
Відкрийте Service Task.
-
На панелі налаштувань справа натисніть
Open Catalogта оберіть шаблон Search Subjects Edr Registry зі списку.
-
Налаштуйте обраний шаблон:
-
У полі
Nameвкажіть назву задачі. Наприклад,Пошук інформації за суб’єктом в ЄДР -
У полі
Authorization tokenзазначте токен для доступу до СЕВ ДЕІР "Трембіта". Наприклад,{token}.Authorization tokenнадається постачальником сервісу (в нашому випадку — ЄДР), який є іншим учасником СЕВ ДЕІР "Трембіта". -
У полі
Codeвведіть код (ЄДРПОУ або РНОКПП) для пошуку в ЄДР. Наприклад,88888888. -
У полі
Result variableзазначте назву вихідного параметру, до якого буде записано відповідь від сервісу. Наприклад,response.

-
|
При інтеграції бізнес-процесів зі стороннім сервісом Search Subjects, особливу увагу слід звернути на мапінг значень поля Більш детально про мапінг статусів стану суб’єкта ви можете дізнатися у таблиці Можливі значення стану суб’єкта з ЄДР. |
3. Приклади використання у бізнес-процесі
Розглянемо ситуацію, коли у бізнес-процесі необхідно перевірити статус суб’єкта в ЄДР.
Для цього у процесі необхідно налаштувати інтеграційний конектор для пошуку суб’єкта з ЄДР (в нашому випадку відповідь буде записано до змінної responseEDR).

{
"name": "active user",
"code": "77777777",
"id": 213123,
"state": "ACTIVE"
}
Відповідь містить параметр state, що має значення "ACTIVE".
Далі на шлюзі відбувається перевірка:
Якщо state має значення SUSPENDED або CANCELLED, то бізнес-процес видає валідаційну помилку.
|
${responseEdr.value.responseBody.elements().get(0).prop('state').value().equals('SUSPENDED') || responseEdr.responseBody.elements().get(0).prop('state').value().equals('CANCELED')}

Якщо state не дорівнює SUSPENDED або CANCELLED, то відбудеться подальше виконання процесу.
|
${!responseEdr.value.responseBody.elements().get(0).prop('state').value().equals('SUSPENDED') && !responseEdr.value.responseBody.elements().get(0).prop('state').value().equals('CANCELED')}
