Пошук сутностей у базі даних іншого реєстру
Розширення Search for entities in another registry data factory — делегат для пошуку сутностей у базі даних інших реєстрів на Платформі, який налаштовується за допомогою шаблону Search for entities from another registry data factory (registryDataFactoryConnectorSearchDelegate.json).
- Для налаштування шаблону делегата в Camunda Modeler, необхідно виконати наступні кроки:
-
-
Створіть Service Task.
-
На панелі налаштувань справа натисніть кнопку
Open Catalog, оберіть відповідний шаблон Search for entities in another registry data factory зі списку та натиснітьApplyдля підтвердження.
-
Сконфігуруйте обраний шаблон:
Перед налаштуванням шаблону в Camunda Modeler переконайтеся, що папка із застосунком resources → element-templates містить файл registryDataFactoryConnectorSearchDelegate.json. -
У полі
Nameвведіть назву сервісної задачі, в рамках якої налаштовується делегат. Наприклад,Отримати сутності із БД іншого реєстру на Платформі. -
Перейдіть до секції Input Parameters (Вхідні параметри запита):
-
Розгорніть блок Target registry та вкажіть назву цільового реєстру для запуску в ньому бізнес-процесу.
Назва реєстру має відповідати назві, вказаній для реєстру (namespace) в адміністративній панелі Control Plane. -
Активуйте позначку
Local Variable Assignment→ON. Це дозволить створити локальну змінну для назви реєстру, в якому необхідно запустити бізнес-процес. -
У полі
Variable Assignment Typeоберіть з випадного списку тип призначення змінної —String or Expression. -
У полі
Variable Assignment Valueвкажіть назву реєстру із Control Plane, в якому необхідно запустити бізнес-процес. Наприклад,test-another-registry.У нашому випадку ми передаємо назву реєстру як константу, напряму, —
test-another-registry.Можна також застосувати для цього функцію
submission()і передати назву реєстру з користувацької форми як${submission('<formId>').formData.prop('namespace').value()}, де'<formId>'треба замінити на ID користувацької задачі (форми) у бізнес-процесі, а'namespace'— атрибут для середовища (простір імен) кластера, де такий реєстр розгорнуто.Приклад 1. Приклад для передачі назви реєстру через функцію submission()${submission('childDataInput').formData.prop('namespace').value()}
-
-
Розгорніть блок Resource та вкажіть ресурс, тобто назву ендпоінту для критерію пошуку (view) в API Фабрики даних реєстру, до якого необхідно звернутися.
-
Активуйте позначку
Local Variable Assignment→ON. Це дозволить створити локальну змінну для ресурсу. -
У полі
Variable Assignment Typeоберіть з випадного списку тип призначення змінної —String or Expression. -
У полі
Variable Assignment Valueвкажіть ресурс для критерію пошуку. Наприклад,edu-type-contains.
-
-
Розгорніть блок Search variables та вкажіть змінні (параметри) пошуку, які необхідно передати у запиті.
-
Активуйте позначку
Local Variable Assignment→ON. Це дозволить створити локальні змінні для пошуку даних в іншому реєстрі. -
У полі
Variable Assignment Typeоберіть з випадного списку тип призначення змінної —Map.Іншими словами, необхідно передати набір пар "ключ-значення". -
У полі
Variable Assignment Valueвкажіть ключі та їх значення для параметрів пошуку.Додайте запис. Для цього натисніть
Add Entry:-
Для поля
Keyвкажітьname, а для поля Value вкажіть значення параметра. Наприклад,${submission('<formId>').formData.prop('name').value()}.У нашому випадку ми передаємо 1 параметр (змінну) пошуку nameта його значення з відповідної форми (<formId>) за допомогою функціїsubmission(). Значення параметрів пошуку можна також визначати напряму як константу. Наприклад,some-value-for-name-key.
-
-
-
Розгорніть блок X-Access-Token та вкажіть введіть токен доступу до ресурсу:
-
Активуйте позначку
Local Variable Assignment→ON. Це дозволить створити локальну змінну для токена доступу. -
У полі
Variable Assignment Typeоберіть з випадного списку тип призначення змінної —String or Expression. -
У полі
Variable Assignment Valueвведіть токен доступу. Наприклад,${initiator().accessToken}.Токен доступу береться з АБО ініціатора (наприклад,
$initiator().accessToken}), АБО виконавця останньої користувацької задачі (наприклад,${completer('taskDefinitionId').accessToken}).
-
-
-
У секції Output Parameters (Вихідні параметри):
-
Розгорніть блок Result variable вкажіть назву змінної процесу, до якої необхідно записати результат (за замовчуванням —
response):-
Активуйте позначку
Local Variable Assignment→ON. -
У полі
Variable Assignment Typeоберіть з випадного списку тип призначення змінної —String or Expression. -
У полі
Variable Assignment Valueвведіть назву результівної змінної (за замовчуванням —response).
-
-
-
-