Документация по настройке процессов
Это документация Creatio версии 7.16.0. Мы рекомендуем использовать новую версию документации.

Как использовать события для ветвления процесса

Для ветвления процесса в зависимости от наступления тех или иных событий используется логический оператор [Исключающее “ИЛИ” по событиям]. События, от выполнения которых зависит ветвление процесса, помещаются на исходящие потоки логического оператора (Рис. 204).

Рис. 204 — Использование логического оператора [Исключающее “ИЛИ” по событиям]

scr_process_creation_designer_event_gateway_example.png 

Пример

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

Для создания договора используется элемент [Открыть страницу редактирования]. Настройки на странице идентичны настройкам при создании нового документа.

Для отправки договора на визирование необходимо использовать элемент [Автогененируемая страница]. Настройка данного элемента описана в статье “Элемент процесса [Автогенерируемая страница]”. После отправки договора на визирование необходимо добавить визу на страницу договора. Для добавления визы используется элемент [Добавить данные].

Схема с реализованным ветвлением представлена на Рис. 205.

Рис. 205 — Процесс визирования договора

scr_process_creation_designer_process_with_events_contracts.png 

Чтобы построить ветвление процесса, исходящий поток каждой ветви которого должен активироваться в зависимости от результата:

1.Поместите логический оператор [Исключающее “ИЛИ” по событиям] после действия “Добавить визу” и соедините потоком управления.

2.Поместите элемент [Обработка сигнала] после логического оператора и соедините потоком управления.

3.Заполните страницу настройки элемента [Обработка сигнала] в случае успешного визирования договора (Рис. 206):

Рис. 206 — Настройки элемента [Обработка сигнала] для успешного визирования

scr_process_creation_designer_signal_for_visa.png 

a.В поле [Сигнал какого типа получен?] выберите значение “Получен сигнал от объекта”.

b.Нажмите на поле [Идентификатор записи], чтобы открыть окно определения значения параметра:

Выберите элемент [Добавить визу] на вкладке [Элементы процесса].

Кликните дважды на значении параметра [Id созданной записи]. Выбранное значение появится в верхней части окна определения значения параметра.

Нажмите на кнопку [Сохранить].

c.Укажите объект, от которого необходимо получить сигнал. В нашем примере это объект “Виза договора”.

d.В поле [Какое событие должно произойти?] укажите “Изменение записи”.

e.Выберите колонку, изменения в которой активируют сигнал. В нашем примере это колонка “Состояние”.

f.Настройте условия, которым должна соответствовать запись после изменения. Чтобы сигнал активировался после установки визы и открылась страница ранее созданного договора для его подписания, состояние визы должно быть положительным.

4.Поместите еще один элемент [Обработка сигнала] после логического оператора и соедините потоком управления. Это сигнал “Отправить на доработку”, который должен срабатывать, если визирующий отклонил визу.

5.Для запуска обрабатывающего сигнала заполните панель настройки элемента [Обработка сигнала] (Рис. 207): Настройки идентичны настройкам сигнала, который срабатывает после получения визы, с той разницей, что в условиях фильтрации необходимо указать “Состояние=Отрицательная”.

Рис. 207 — Настройки элемента [Обработка сигнала] в случае отклонения визы

scr_process_creation_designer_signal_for_visa_cancel.png 

6.Добавьте элемент [Открыть страницу редактирования] после элементов “Договор завизирован” и “Отправить на доработку”. В случае положительной визы открывается ранее созданный договор, в котором необходимо изменить состояние на “Подписан”. В случае отрицательной визы открывается страница ранее созданного договора для доработки.

7.Сохраните процесс.

Важно

Логический оператор [Исключающее “ИЛИ” по событиям] требует публикации процесса. В ходе публикации осуществляется проверка всех созданных процессов.

Смотрите также

Промежуточное событие [Обработка сообщения]

Промежуточное событие [Обработка сигнала]

Элемент процесса [Исключающее “ИЛИ” по событиям]

Был ли данный материал полезен?

Как можно улучшить эту статью?