Подпроцесс (Вложенный бизнес-процесс) - самостоятельный бизнес-процесс, инициируемый в ходе выполнения родительского процесса. При инициации подпроцесса выполнение родительского процесса приостанавливается до тех пор, пока не завершится подпроцесс. Исключение составляют внешние подпроцессы, имеющие маркер "Множественное выполнение".
Внутренний подпроцесс - бизнес-процесс, выполняющийся в контексте родительского процесса. Такой подпроцесс напрямую связан с контекстом родительского процесса, и потому ему не требуются специализированные механизмы обмена данными. Несмотря на то, что внутренний подпроцесс выполняется в рамках родительского процесса, он может обладать собственными контекстными переменными, существующими только в рамках этого подпроцесса. Внутренний подпроцесс может быть запущен в системе только в рамках своего родительского процесса.
Если выбрать пункт Выбрать существующий Внутренний Процесс, откроется окно выбора подпроцесса, в котором будут отражены все внутренние подпроцессы моделируемого процесса (рис. 2).
Рис. 2. Окно выбора внутреннего подпроцесса
Если выбрать пункт Создать новый Внутренний Процесс, запустится мастер добавления процесса. Процесс будет создан в качестве внутреннего подпроцесса текущего процесса.
Настройки внутреннего подпроцесса
Вкладка "Общие"
Рис. 3. Настройки внутреннего подпроцесса. Вкладка "Общие"
Название* — название внутреннего подпроцесса, отображаемое на графической модели, в документации по процессу и регламенте процесса, а также в заголовке окна редактирования данного внутреннего подпроцесса. Название внутреннего подпроцесса также отображается на кнопке перехода к этому подпроцессу в веб-приложении в случае, если переход не имеет собственного названия.
Процесс — отображает текущий выбранный подпроцесс. Кнопка Указать процесс позволяет выбрать любой из внутренних процессов текущего процесса.
Кнопка Изменить маркер — позволяет настроить выполнение подпроцесса в цикле или по условию. При этом у операции на графической модели появляется дополнительный маркер, а в окне настройки операции дополнительные вкладки. Настройка выполнения подпроцесса в цикле и по условию описаны на странице Маркеры операций.
Также на этой вкладке можно установить флажки для определения Действия при прерывании (завершении) экземпляров. Данные флажки определяют взаимное поведение процесса и подпроцессов при прерывании экземпляра процесса в веб-приложении:
Прерывать родительский экземпляр процесса при прерывании экземпляра подпроцесса.
Прерывать экземпляры подпроцессов при прерывании родительского экземпляра.
Вкладка "Дополнительно"
На данной вкладке (рис. 4) предусмотрена возможность добавления участников родительского процесса в список участников подпроцесса. Должность участника определяется из списка должностей, групп пользователей и/или свойств.
Рис. 4. Настройки внутреннего подпроцесса. Вкладка "Дополнительно"
При установке флажка Указать список должностей, которые могут быть указаны как участники подпроцесса появляется форма выбора должностей:
кнопка Добавить должность позволяет добавить элемент оргструктуры;
кнопка Добавить из свойства позволяет добавить переменную типа "Пользователь", в которой хранится информация об исполнителях задач в настроенных зонах ответственности на графической модели подпроцесса.
Если флажок Указать список должностей, которые могут быть указаны как участники подпроцесса снят, форма выбора должностей по умолчанию будет скрыта.