Функція submission()

1. Опис

JUEL-функція submission(String activityOrEventId): UserFormDataDto дозволяє отримати дані форми користувацької задачі або стартової форми та повертає клас UserFormDataDto.

2. Параметри

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

Аргумент

Опис

activityOrEventId

Ідентифікатор задачі або події, для якої потрібно отримати дані форми.

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

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

Таблиця 2. UserFormDataDto

Поле

Опис

formData

Дані форми у вигляді об’єкта SpinJsonNode.

UserFormDataDto — клас, що є обгорткою даних форми користувача.

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

Ця функція не надає додаткових методів взаємодії.

Функція submission(String activityOrEventId) доступна для використання після успішного завершення користувацької задачі або стартової форми.

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

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

5.1. Використання у завданнях користувача

Функція submission() може бути корисною при налаштуванні шаблонів делегатів у завданнях користувача, таких як:

Ви можете використовувати функцію у полі Form data pre-population, щоб перенести дані з попереднього завдання:

${submission('Previous user task ID').formData}

Розбір прикладу:

  • submission() — назва JUEL-функції.

  • 'Previous user task ID' — ідентифікатор попередньої задачі користувача, яка містила подібний набір полів.

  • formData — метод, що дозволяє отримати дані з попередньої форми та передати їх на іншу форму.

Це забезпечує безперервний зв’язок між діями, виконаними у попередньому завданні, і поточним завданням, де такі дані передаються.

5.2. Використання у сервісних завданнях

Функція submission() також корисна у сервісних завданнях, особливо коли потрібно передати дані з UI-форми у вигляді Payload:

${submission('Previous user task ID').formData}

Пояснення:

У цьому прикладі передаються ID задачі ('Previous user task ID') та дані, введені користувачем на UI-формі, за допомогою методу formData.

5.3. Передача даних як map ключів-значень у сервісних завданнях

Іноді потрібно отримати конкретне значення поля з форми для подальшої обробки. Наприклад:

submission('Previous user task ID').formData.prop('userName').value()

Розбір прикладу:

  1. submission('Previous user task ID') викликає функцію submission() для отримання даних форми, яка була надіслана на етапі процесу, позначеному ідентифікатором Previous user task ID.

  2. .formData.prop('userName').value() витягує значення поля з ідентифікатором userName з форми.

Детальні приклади дивіться на сторінці Самостійна реєстрація користувачів з ручною модерацією.

5.4. Використання у скриптових завданнях

Функція submission() може бути інтегрована у Groovy-код для обробки цифрових документів або файлів:

def file = submission('Previous task ID').formData.prop('file').elements().get(0)

Пояснення:

  1. submission('Previous task ID') викликає функцію submission() для отримання даних форми з етапу, позначеного як Previous task ID.

  2. .formData.prop('file') витягує поле з ідентифікатором file.

  3. .elements().get(0) вибирає перший файл зі списку завантажених файлів, якщо форма дозволяє завантаження кількох файлів.

Більше інформації дивіться на сторінці Асинхронне завантаження даних до БД.