Функція completer()

1. Опис

JUEL-функція completer(String taskDefinitionKey): UserDto використовується для отримання даних про виконавця / завершувача завдання користувача (User Task) в рамках бізнес-процесу.

2. Параметри

Таблиця 1. Параметри функції

Аргумент

Опис

taskDefinitionKey

Ключ завдання, для якого потрібно отримати дані завершувача.

3. Що повертає

Ця функція повертає об’єкт типу UserDto, що містить дані про виконавця завдання.

Таблиця 2. UserDto

Поле

Опис

userName

Ім’я користувача.

accessToken

Токен користувача.

language

Мова користувача.

drfo

Ідентифікаційний код користувача.

edrpou

Код ЄДРПОУ користувача.

fullName

Повне ім’я користувача.

roles

Ролі користувача.

subjectType

Тип суб’єкта користувача.

isRepresentative

Чи є користувач представником.

attributes

Інші атрибути користувача у вигляді ключів-значень.

Клас UserDto є обгорткою даних користувача.

4. Методи взаємодії

Функція надає наступні методи:

Таблиця 3. Методи взаємодії

Метод

Опис

getUserName()

Повертає ім’я користувача, що можна використовувати в полях Assignee та Candidate Users задач користувача.

getAccessToken()

Повертає токен користувача, що можна використовувати в інтеграційних конекторах для дій від імені користувача.

getLanguage()

Повертає мову користувача, що можна використовувати для налаштування інтерфейсу.

getDrfo()

Делегує виклик на JwtClaimsDto та повертає Keycloak-атрибут drfo користувача.

getEdrpou()

Делегує виклик на JwtClaimsDto та повертає Keycloak-атрибут edrpou користувача.

getFullName()

Делегує виклик на JwtClaimsDto та повертає Keycloak-атрибут fullName користувача.

getRoles()

Повертає ролі користувача.

getSubjectType()

Повертає тип суб’єкта користувача.

isRepresentative()

Повертає, чи є користувач представником.

getAttributes()

Повертає інші атрибути користувача у вигляді ключів-значень.

Функція completer() доступна для використання після успішного завершення користувацької задачі.

Ця функція корисна, коли вам потрібно отримати інформацію про користувача, який завершив певне завдання у бізнес-процесі. Замість того, щоб робити прямі запити до API контексту виконання, ви можете використовувати цю JUEL-функцію прямо в Groovy-редакторі.

5. Приклади використання

Цей розділ демонструє приклади використання JUEL-функції у завданнях бізнес-процесу.

Де можна знайти приклад бізнес-процесу?

Адміністратор Платформи може розгорнути для вас демо-реєстр — еталонний реєстр, що містить референтні та інші приклади файлів для створення цифрового регламенту. Він містить різноманітні елементи для розробки моделі даних, бізнес-процесів, UI-форм, аналітичної звітності, витягів, сповіщень, зовнішніх інтеграцій та багато іншого.

Детальну інструкцію щодо розгортання демо-реєстру та отримання референтних прикладів моделювання ви знайдете на сторінці Розгортання демо-реєстру із референтними прикладами.

Застосування функції completer() представлено у багатьох бізнес-процесах.

Ви можете використати один із багатьох прикладів процесів за пошуком по ключовим словам — edit-grid-rows-action.

У Кабінеті користувача бізнес-процес буде доступний у розділі Доступні послуги.

Існує декілька варіантів використання функції completer() у бізнес-процесі.

Один із найбільш розповсюджених сценаріїв — застосування функції в інтеграційних розширеннях (делегатах) для передачі X-Access-Token у бізнес-процесі, тобто токена доступу користувача, під яким виконується операція. Цей токен забезпечує повноваження виконавця задачі щодо доступу до даних.

${completer('Task definition ID').accessToken}
  • 'Task definition ID' — ID попередньої задачі користувача.

Застосування функції completer() детально представлено у референтному прикладі на сторінці Вибір та виконання дій з одного чи декількох рядків у таблиці.