Multi instance

Multi Instance (многоэкземплярная активность) — способ определения повторения определенного шага в бизнес-процессе.

В концепциях программирования мультиэкземпляр соответствует for each конструкции: он позволяет выполнять определенный шаг или даже полный подпроцесс для каждого элемента в данной коллекции, последовательно или параллельно.

Многоэкземплярная активность — обычное действие, для которого определены дополнительные свойства (так называемые multi-instance characteristics), которые заставляют действие выполняться несколько раз во время выполнения.

Следующие действия могут стать действиями с несколькими экземплярами:

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

  • Задача-сценарий;

  • Подпроцесс.

В редакторе Multi Instance можно установить следующим образом:

../../../../../_images/93.png
../../../../../_images/451.png
Sequential Multi Instance – последовательная активность с несколькими экземплярами.
Экземпляры выполняются друг за другом.
Когда один экземпляр завершен, создается новый экземпляр для следующего элемента в inputCollection.
../../../../../_images/94.png
../../../../../_images/441.png
Parallel Multi Instance - параллельная активность с несколькими экземплярами.
Все экземпляры создаются при активации тела активности с несколькими экземплярами.
Экземпляры выполняются одновременно и независимо друг от друга.
../../../../../_images/95.png

Настройки:

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

Если выбрано parallel или sequential multi-instance, то задачи будут назначаться на authority из ролей - пользователи записываются в assignee, группы в candidateGroup.
При выставлении флага «Ручное назначение» появляется возможность указать реципиентов:
../../../../../_images/96.png
Подробно о реципиентах
И далее указать настройки множественного экземпяра, которые аналогичны и для Задачи-сценария, Подпроцесса:
../../../../../_images/97.png
Пользовательская задача
Подпроцесс
Количество повторений цикла/ Loop cardinality - прямое указание числа экземпляров
Условие завершения / Completion condition - выражение, которое вычисляется каждый раз, когда заканчивается один экземпляр
Коллекция/ Collection - коллекция, в которой экземпляр будет создан для каждого элемента
Переменная элемента / Element variable - переменная процесса, которая будет установлена для каждого созданного экземпляра, содержащего элемент указанной коллекции

Подробно о Multi instance