Подпроцесс

Схема
Рисунок 1. Пиктограмма функции

Общее описание функции

Функция подпроцесса позволяет организовать одновременное выполнение нескольких бизнес-процессов для решения одной задачи. Для этого в бизнес-процессе определяется подпроцесс. Каждый подпроцесс является самостоятельным бизнес-процессом. В качестве подпроцесса может использоваться шаблон бизнес-процесса, в основных свойствах которого установлен флаг Может использоваться как подпроцесс. Бизнес-процесс, содержащий функцию подпроцесса, называется основным по отношению к подпроцессу.

Сценарии использования

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

По отношению к основному бизнес-процессу подпроцесс может выполняться синхронно или асинхронно.

Синхронное выполнение подразумевает, что выполнение ветки основного бизнес-процесса, содержащей подпроцесс, будет приостановлено до завершения подпроцесса, и, вероятно, но не обязательно, получения от него какой-либо переменной (переменных).
При этом остальные ветви основного бизнес-процесса могут продолжать выполняться до завершения или до появления условия, для выполнения которого необходимо завершение ветви, содержащей подпроцесс.
Если подпроцесс завершает работу с ошибкой, основной процесс также будет завершен с ошибкой.

При асинхронном выполнении после активации подпроцесса основной бизнес-процесс будет продолжать выполняться, обмен переменными между основным бизнес-процессом и подпроцессом может происходить при активизации подпроцесса, возврата значений не происходит, а завершение основного бизнес-процесса (успешное или по ошибке) не зависит от завершения подпроцесса.

Настройка параметров

Параметры подпроцесса
Рисунок 2. Параметры подпроцесса

Параметры подпроцесса определяются на вкладке Параметры окна свойств функции Подпроцесс.

Шаблон подпроцесса

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

Имя создаваемого экземпляра

Имя экземпляра.

Папка для создания экземпляров подпроцессов

Папка, в которую будут помещаться экземпляры подпроцесса.

Приоритет

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

Переменная экземпляра

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

Выполнять асинхронно

Флаг, позволяющий выбрать синхронный или асинхронный режим выполнения подпроцесса (см. выше).

Переменные

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

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

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

  • Если переменной подпроцесса не было сопоставлено значение или переменная родительского процесса, то при создании переменной подпроцесса никакого значения ей присвоено не будет.

Окно сопоставления переменных основного процесса и подпроцесса
Рисунок 3. Окно сопоставления переменных основного процесса и подпроцесса

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

После запуска бизнес-процесса на вкладке Параметры становится активной еще одна кнопка — Экземпляр. Кнопка позволяет открыть карточку подпроцесса для просмотра.

Если в подпроцессе не указаны значения всех переменных со свойством Значение переменной должно быть задано при создании экземпляра (т. е. значение переменных должно запрашиваться при создании экземпляра), подпроцесс сообщает родительскому процессу о завершении с ошибкой.

После этого необходимо:
  1. Уточнить по данным журнала бизнес-процесса, значение какой обязательной переменной подпроцесса не задано.

  2. Указать значение переменной.

  3. Перезапустить бизнес-процесс с места ошибки.