Пользовательская задача

Пользовательская задача выполняется пользователем или участником процесса. При выполнении таких задач обычно требуется ввод данных, манипуляции с объектами и т.д.

Атрибуты и форма

Указать Имя.

../../../../../_images/55_0.png
Указать реципиентов - пользователей - исполнителей задачи.
Реципиент может быть выбран из списка ролей или указан вручную.
../../../../../_images/55_1.png
При выборе из списка представлен список ролей, заполненных в типе данных:

Для ввода вручную необходимо выставить флаг «Ручное назначение»
В поле указывается имя или recordRef реципиента. Поддерживаются expression для получения реципиентов из переменных или сервисов.
Expression может вернуть множественное значение - строки разделенные запятой: user1,user2,user3
Например:
ivan.petrov
GROUP_company_accountant
emodel/authority-group@company_accountant
${someVariable}
${someService.getRecipients()},petya.voks
../../../../../_images/55_4.png
Форма задачи определяет то, что будет отображено при назначении задачи пользователю.
Форму задачи можно выбрать из списка, создать.
Если форму задачи не указывать - тогда пользователю будут отображены только результаты задачи, указанные в соответствующем поле.
../../../../../_images/56.png
Указать срок выполнения задачи, конкрентную дату.
Дата должна быть указана в формате ISO8601
Например:
2022-06-26T10:30:00 - 20 июня 2022 года 10 часов 30 минут 0 секунд
или в виде выражения: ${someDate}
предварительно задав переменную execution через скриптовую задачу
../../../../../_images/56_1.png
Выбрать приоритет задачи
../../../../../_images/56_2.png
Или указать приоритет (выражение) - Expression для получения приоритета задачи из переменных или сервисов.
Выражение должно вернуть число, представляющее собой приоритет:
- Высокий - 1
- Средний - 2
- Низкий - 3
../../../../../_images/56_2_1.png
Указать результат задачи (вердикт) – идентификатор и название.
В вердиктах можно настроить темы для кнопки. См. подробно о результатах задачи
../../../../../_images/56_3.png

Примечание

Срок выполнения задачи также можно изменить с помощью TaskService или в TaskListeners с помощью переданного DelegateTask.

Важно

При сохранении, сохранении/публикации процесса проверяется обязательность заполнения следующих полей:

  • «Реципиенты задачи»;

  • «Приоритет задачи»: Приоритет или Приоритет (выражение)

Иначе в линтере будет выдана ошибка.

Функционал Lazy approval для задачи

Примечание

Доступно только в Enterprise версии.

Панель Согласование по почте доступна на стендах, где есть лицензия разработчика или лицензия с включенным функционалом lazy approval.

Lazy approval – функционал, позволяющий принимать решения из электронной почты, не заходя в Citeck. Например:

Письмо о согласовании:
../../../../../_images/LA_example.png
В письме выбран вердикт На доработку:
../../../../../_images/LA_example_1.png

О предварительных настройках функционала см. подробно

Для включения функционала lazy approval для определенной задачи необходимо выставить чекбокс «Согласование по почте».

Тип уведомления по умолчанию выставлен Электронная почта.
Выберите шаблон уведомления из созданных ранее
../../../../../_images/user_task_LA.png
Или выставите чекбокс Ручной ввод шаблона уведомления, чтобы воспользоваться другими способами:
Выберите шаблон уведомления из созданных ранее
1. Можно константно в текстовом формате указать RecordRef нужного шаблона.
2. Используя переменную из процесса. Переменную необходимо указывать по следующему синтаксису ${имя_переменной}. Задать переменную можно ранее в скрипте или иными способами. Пример скрипта в процессе:
execution.setVariable('la_not_templ', "notifications/template@test-la-notification");
../../../../../_images/user_task_LA_1.png
Выставите чекбокс Включить отчеты о выполнении согласований через почту, чтобы пользователь получал ответные сообщения об успешно/ неудачно выполненных задачах и выберите шаблоны из созданных ранее.
../../../../../_images/user_task_LA_2.png

Форма задачи

Примечание

Если форма задачи не указана, то будут отображаться доступные вердикты задачи, заполненные в поле Результат задачи.

Результаты задачи версионируются вместе с описанием процесса.

Форму можно создать, нажав Выбрать - Создать форму

../../../../../_images/57.png

Для добавления кнопок вердиктов задачи на вашу форму, можно воспользоваться компонентом формы Task Outcome, который автоматически формирует кнопки вердиктов исходя из настроек Результатов задачи.

Вердикты задачи можно добавить вручную для более гибкой настройки конфигурации. Для этого на форму задачи необходимо добавить кнопку, где «Имя свойства» задается по шаблону outcome_идентификаторВердикта. Например, outcome_approve.

Если какие-то задачи могут совпадать, то можно использовать одинаковую форму.

См. пример создания формы и best practice по расположению кнопок на форме.

Использование переменных на форме

Элементы формы задачи связаны с переменными инстанса (экземпляра) процесса. Если в области видимости задачи/процесса есть переменная с таким же id (Имя свойства), как и у элемента формы, то ее содержимое отобразится на форме.

При сабмите (публикации) формы задачи переменные будут записаны в переменные процесса.

Элементы формы задачи так же могут быть связаны с переменными документа, по которому идет бизнес-процесс.

Для отображения и обновления переменных документа на форме задачи необходимо добавить элемент с id (Имя свойства) с префиксом _ECM_, например _ECM_paymentSum, где paymentSum - свойства документа.

Темы для кнопок вердикта

В вердиктах доступна настройка темы кнопок. Настройка влияет на цвет кнопки по аналогии с кнопками на форме.


Возможные варианты:

Примеры:

../../../../../_images/56_7.png

1

По умолчанию

2

Основная

3

Информация

4

Успешно

5

Опасно

6

Предупреждение