Процесс заявки на закупку оборудования. Добавление событий BPMN

Примечание

Данная статья является продолжением работы с созданным ранее бизнес-процессом Заявка на закупку оборудования

Добавим в созданный бизнес-процесс события:

  1. Сигнал, который запустит отдельный процесс отправки уведомления согласующему после получения заявкой статуса «На согласовании».

  2. Таймер». Если согласующий не согласовал заявку в течение 30 минут, то она автоматически перейдет в статус «Отказано».

../_images/019.png

Сигнал

Между компонентами Статус «На согласовании» и Пользовательская задача «На согласовании согласующим» необходимо добавить промежуточное событие «Сигнал»

../_images/event_01.png

Далее выбрать его тип Signal Intermediate Throw event:

../_images/event_02.png

Укажите свойства события:

  • Имя - Отправить уведомление

  • Имя сигнала - sendEmail,

  • Фильтр события по документу – Текущий документ

../_images/event_03.png

И далее добавьте событийный подпроцесс «Сигнал» - подпроцесс, запускаемый событием. Для создания событийного подпроцесса создайте сначала стандартный подпроцесс. И далее выберите Event Sub Process:

../_images/event_04.png

В подпроцессе измените Start event на Signal Start event (non-interrupting):

../_images/event_05.png

Со следующими свойствами:

  • Чекбокс Ручная настройка

  • Имя сигнала – sendEmail

  • Фильтр события по документу – Текущий документ

../_images/event_06.png

К начальному событию добавьте компонент Уведомление:

../_images/event_07.png

со следующими свойствами:

  • Имя – Уведомление согласующему

  • Заголовок – Согласуйте заявку

  • Тело сообщения – Согласуйте заявку на покупку оборудования

  • Кому – Согласующий

../_images/event_08.png

Добавьте End Event компонент (1):

../_images/event_09.png

Опубликуйте бизнес-процесс (2).

Для проверки создайте заявку, чтобы процесс пошел по ветке с согласованием сотрудником. Для этого укажите любое другое название оборудования, не указанное в таблице, или укажите:

  • Название оборудование – Ноутбук

  • Стоимость - 65000

  • Инициатор – текущий пользователь

  • Согласующий – любой пользователь, у которого в профиле указан электронный адрес.

Для проверки созданного уведомления перейдите в рабочее пространство администратора. В разделе Конфигурация уведомлений перейдите в пункт Уведомления:

Нажмите:

../_images/notification_01.png

Откроется форма уведомления. В данных уведомления указано всё то, что мы настраивали в компоненте Send task:

../_images/notification_02.png

Таймер

К компоненту Пользовательская задача «На согласовании согласующим» необходимо добавить промежуточное событие «Таймер»:

../_images/timer_01.png

Далее перенесите событие на компонент Пользовательская задача «На согласовании согласующим»:

../_images/timer_02.png

Выберите Timer Boundary Event:

../_images/timer_03.png

Укажите свойства события:

  • Тип – Дата

  • Значение – PT30M В формате ISO 8601 PT30M - 30 минут. Подробно о формате

../_images/timer_04.png

Поток от таймера отведите к gateway (1):

../_images/timer_05.png

Опубликуйте бизнес-процесс (2).

Для проверки создайте заявку, чтобы процесс пошел по ветке с согласованием сотрудником. Для этого укажите любое другое название оборудования, не указанное в таблице, или укажите:

  • Название оборудование – Ноутбук

  • Стоимость - 65000

  • Инициатор – текущий пользователь

  • Согласующий – любой пользователь, у которого в профиле указан электронный адрес.

Когда процесс дойдет до согласования согласующим, не выносите решение по задаче – через 30 минут заявка будет автоматически переведена в статус «Отказано».

Весь процесс финально:

../_images/028.png