Задача бизнес-правило

Примечание

Введенные в форму данные форме должны четкое соответствовать (включая регистр) входным элементам таблицы принятия решений.

Будьте внимательны при сравнении строк и использовании символов в unicode.

Задача бизнес-правило служит для вызова решения DMN из процесса BPMN, используется для синхронного выполнения одного или нескольких правил.

Элемент выбирается следующим образом:


Примечание

Выходной элемент решения, также называемый результатом решения, не сохраняется автоматически как переменная процесса. Вы должны указать Переменную результата и выбрать тип Сопоставления результата решения.

Укажите Имя

../../../../../_images/b_rule_3.png

Выберите Решение из списка созданных:

../../../../../_images/b_rule_4.png
Выберите Связь с версией решения:

Опубликованное с процессом - рассчитывается версия решения, которая была опубликована вместе с версией процесса.
Актуальное - всегда последняя версия решения.
Версия - позволяет указать конкретную версию решения.
Тег версии - позволяет указать конкретную версию решения по тегу.
../../../../../_images/b_rule_5.png

Укажите Переменную результата из списка созданных:

../../../../../_images/b_rule_6.png
Выберите Сопоставление результата решения из списка созданных:

Собрать все объекты (List<Object>) - таблицы решений с несколькими правилами сопоставления и только одним выходом
Список результатов (List<Map<String, Object>>) - таблицы решений с несколькими правилами сопоставления и несколькими выходными данными
Один объект (TypedValue) - литеральные выражения решений и таблицы решений с не более, чем одним правилом сопоставления и только одним выходом
Один результат (Map<String, Object>) - таблицы решений с не более, чем одним правилом сопоставления
../../../../../_images/b_rule_7.png
Настройки асинхронности:
- Асинхронно «перед»- исполнение доходит до точки перед блоком, транзакция комитится и дальнейшее выполнение ставится в очередь, которую разбирает уже джоба
- Асинхронно «после» - исполнение доходит до точки после блока, транзакция комитится и дальнейшее выполнение ставится в очередь, которую разбирает уже джоба
См. подробнее о асинхронных задачах
../../../../../_images/b_rule_8.png

Важно

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

  • «Решение»;

  • «Связь»:
    • «Версия»;

    • «Тег версии»

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

Как Input variable для DMN можно использовать переменные процесса. Для этого можно сохранить информацию из документа в переменную процесса и далее ее использовать.

Например:

Со следующим скриптом:

execution.setVariable('price', document.load("price?num"));

Вариант без использования script task подходит только для простых случаев и если данные уже «готовы». Можно напрямую получить recordsService в expression, только обязательно необходимо указать язык juel.

Например:

Records.get(documentRef).load("color")

Настройки в DMN решении