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

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

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

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

scr_process_creation_designer_event_gateway_example.png 

Пример

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

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

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

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

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

scr_process_creation_designer_process_with_events_contracts.png 

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

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

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

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

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

scr_process_creation_designer_signal_for_visa.png 

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

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

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

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

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

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

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

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

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

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

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

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

scr_process_creation_designer_signal_for_visa_cancel.png 

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

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

Важно

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

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

Элемент процесса [Обработка сообщения]

Элемент процесса [Обработка сигнала]

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

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

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