Настроим бизнес-процесс согласования отпуска.
Важно
Бизнес-процесс — это регулярно повторяющаяся последовательность взаимосвязанных действий, направленных на создание определённого продукта или услуги для потребителей. При этом потребителями могут быть не только внешние заказчики, но и внутренние. Например, банк выдаёт кредиты своим клиентам — это бизнес-процесс с внешним заказчиком. Когда тот же банк принимает на работу менеджера по кредитованию, в качестве заказчика будет выступать уже руководитель департамента банка, который ищет себе нового сотрудника. Такой бизнес-процесс удовлетворяет внутренние нужды компании.
Процессы можно описать и при помощи должностных инструкций, но лучше использовать для этого специальные нотации. В системе за основу мы взяли нотацию BPMN 2.0. Она позволяет не только описать последовательность действий в процессе, но и определить его участников. Это, несомненно, одно из главных преимуществ нотации BPMN. Подробнее с нотацией можно познакомиться на
сайте.
Бизнес-процесс в BPMN — это схема, на которой каждый участник представлен в виде
Зоны ответственности. Внутри зоны ответственности располагаются события и задачи, за которые отвечает участник процесса.
Вот, например, как будет выглядеть простой процесс покупки техники, описанный в ELMA365:
Пример бизнес-процесса
Определим участников бизнес-процесса:
- Инициатор — любой сотрудник организации, который собирается взять отпуск за свой счет;
- Руководитель инициатора, который должен согласовать отпуск;
- Сотрудник отдела кадров, который формирует приказ на отпуск.
Создадим бизнес-процесс согласования отпуска. Если мы сделаем это через приложение Отпуск, то процесс будет автоматически связан с приложением. Сразу после создания элемента приложения Отпуск система автоматически запустит связанный бизнес-процесс.
Настройки приложения «Отпуск»
Бизнес-процессы приложения «Отпуск»
Сразу после создания мы попадаем в дизайнер бизнес-процессов. В нём уже есть стартовое событие и зона ответственности инициатора — пользователя, который инициировал данный бизнес-процесс. Так как процесс связан с приложением, инициатором будет пользователь, который создал элемент приложения Отпуск.
Важно
Бизнес-процесс моделируется из существующих элементов, которые расположены справа. На первой вкладке находятся стандартные элементы, такие как
Задача,
Оповещение,
Шлюз и т. п. На второй — дополнительные элементы для работы с приложениями, документами и другими элементами системы. На третьей — интеграционные элементы, которые позволяют обратиться в другую систему.
После стартового события определим руководителя инициатора, чтобы в дальнейшем поставить ему задачу согласования. Для определения руководителя в системе существует специальное действие в списке дополнительных элементов — Получить руководителя. Перенесём его на схему процесса и соединим со стартовым событием переходом.
Важно
Переход задаёт порядок выполнения действий и определяет последовательность событий в процессе. Подписи к переходам повышают наглядность схемы, а также служат названиями кнопок на формах задач.
Например, у задачи
Заполнить заявление на отпуск/отгул есть два исходящих перехода:
Завершить и
Отправить на согласование.
Действие «Получить руководителя» на схеме бизнес-процесса
Настроим действие. Чтобы сохранить пользователя, который является руководителем инициатора, создадим новую переменную в контексте процесса. Сделать это можно прямо из настроек блока.
Важно
Все переменные бизнес-процесса находятся на вкладке
Контекст. Они похожи на контекст приложения, только связаны с бизнес-процессом.
Настройка действия «Получить руководителя»
Добавление свойства в контекст бизнес-процесса
Добавим зону ответственности Руководитель в процесс.
Важно
Зона ответственности может быть динамической или статической.
Динамическая зона ответственности используется, если должность участника определяется в ходе исполнения процесса. Например, руководитель инициатора бизнес-процесса.
Статическая зона ответственности используется, если должность ответственного известна до начала процесса. Например, главный бухгалтер или сотрудник отдела кадров.
Добавление зоны ответственности на схему бизнес-процесса
Выберем динамическую зону ответственности, а её исполнителем назначим руководителя.
Добавление зоны ответственности на схему бизнес-процесса
Теперь можно поставить руководителю задачу согласования отпуска.
Важно
Задача — это один из инструментов для организации работы внутри компании. Задачи могут ставиться автоматически в рамках бизнес-процесса или вручную сотрудниками. Все задачи отображаются в одноимённом разделе.
Задачи пользователя
Задача находится на вкладке стандартных элементов бизнес-процесса. Перенесём её на схему процесса и соединим с действием получения руководителя.
Задача на схеме бизнес-процесса
Настроим задачу согласования:
- в названии укажем Согласовать отпуск;
- чтобы руководитель понимал, чей именно отпуск он согласует, настроим формирование названия по шаблону. Если настроить шаблон таким образом: Согласовать отпуск {$__createdBy.__name}, название задачи будет выглядеть так: Согласовать отпуск Иванов Петр;
Настройка шаблона формирования названия задачи
- настроим форму задачи: добавим поля Отпуск и Комментарий на форму. Так как Отпуск — это переменная типа Приложение, мы можем вывести на форму поля этого приложения. Например, дату начала, завершения и причину. Для этого нажмём на Отпуск, перейдём на вкладку Свойства, перенесём нужные поля в правую область и сохраним настройки.
Настройка формы задачи
Добавим оповещение инициатора. Для этого воспользуемся элементом Оповещение. Оповещение по процессам отправляются в ленту сотрудника.
Важно
Лента позволяет наладить внутренние коммуникации в компании. В ней отображаются все последние новости из информационных каналов, участником которых является пользователь, и системные оповещения, направленные ему. В
Ленте можно просматривать сообщения, комментировать новости, делиться файлами и создавать задачи коллегам.
Каналы — это инструмент для общения внутри команд и отделов. В них легко синхронизировать работу сотрудников, поделиться новостями компании, предупредить коллег о командировке или отпуске, поздравить с важным событием, рассказать о новых сотрудниках.
Лента и
Каналы находятся в разделе
Сообщения.
Лента пользователя
Перенесем Оповещение в зону ответственности руководителя, соединим его с задачей согласования и перейдём к настройкам:
- в названии укажем: Оповещение о согласовании;
- в теме: Отпуск согласован;
- в тексте сообщения напишем: Ваш отпуск с {$leave.date_start} по {$leave.date_end} согласован руководителем. Такой текст сообщения будет выглядеть таким образом: Ваш отпуск с 19.04.2023 по 20.04.2023 согласован руководителем;
- на вкладке Получатели удалим Текущего пользователя и добавим контекстную переменную Инициатор.
Сохраним настройки Оповещения и повторим действия: добавим оповещение на случай, если руководитель не согласовал отпуск.
Оповещения на схеме бизнес-процесса
Добавим конечное событие на схему процесса после оповещения об отказе и соединим с ним.
Конечное событие на схеме бизнес-процесса
Добавим ещё одну зону ответственности на схему бизнес-процесса для сотрудника отдела кадров. Такая зона ответственности будет статической. В настройках выберем Элемент оргструктуры и найдём в ней должность Сотрудник отдела кадров.
Добавление зоны ответственности на схему бизнес-процесса
Добавим на схему бизнес-процесса задачу для сотрудника отдела кадров и соединим её переходом с оповещением о согласовании.
В настройках задачи:
- укажем название: Подготовить приказ на отпуск;
- чтобы сотрудник отдела кадров понимал, для кого именно необходимо подготовить приказ, включим настройку формирования названия по шаблону. Если настроить шаблон таким образом: Подготовить приказ на отпуск за свой счет для {$__createdBy.__name}, название задачи будет выглядеть так: Подготовить приказ на отпуск за свой счет для Иванов Петр;
- на форму задачи достаточно вывести поле Отпуск и его вложенные свойства: Дату начала, Дату окончания, Руководителя.
Для добавления вложенных свойств на форму задачи перейдите в настройки отображения свойства Отпуск.
Настройка шаблона формирования названия задачи
Настройка формы задачи
Важно
Обратите внимание, что в этой задаче, в отличие от предыдущей, появилась ещё одна настройка —
Множественное исполнение.
Такая настройка отображается, когда в качестве исполнителя в зоне ответственности выбраны группа пользователей или отдел. Задача будет назначаться на всех сотрудников, входящих в группу или отдел. Вы можете выбрать, каким образом пользователи будут её выполнять:
Кто первый — задача будет назначена одновременно всем сотрудникам, указанным в качестве исполнителей в зоне ответственности. Как только кто-то начнёт работу по задаче, она исчезнет из списка задач остальных исполнителей.
Параллельное — задача будет поставлена одновременно всем исполнителям, указанным в зоне ответственности. Прежде чем процесс перейдёт к следующему шагу, каждый исполнитель должен будет завершить задачу.
Последовательное — задача будет последовательно назначаться сначала одному сотруднику, указанному в качестве исполнителя в зоне ответственности, а затем другому. Процесс перейдёт к следующему шагу после того, как все сотрудники выполнят задачу.
После подготовки приказа настроим отправку инициатору оповещения о необходимости подойти в отдел кадров и подписать приказ.
Оповещение на схеме бизнес-процесса
Настроим тему и текст оповещения, а также укажем инициатора бизнес-процесса получателем.
Настройка оповещения
Добавим конечное событие после оповещения.
Конечное событие на схеме бизнес-процесса
Теперь можно опубликовать первую версию нашего бизнес-процесса и посмотреть, как он работает с точки зрения пользователя.