Автоматизация HR процессов с использованием Microsoft Teams, PowerApps и Power Automate. Заявки на выход сотрудников

Добрый день всем! Сегодня я бы хотел поделиться небольшим примером автоматизации процесса создания заявок на выход новых сотрудников с использованием продуктов Microsoft SharePoint, PowerApps, Power Automate и Teams. При реализации данного процесса не потребуется покупка отдельных пользовательских планов PowerApps и Power Automate, достаточно будет подписки Office365 E1/E3/E5. На сайте SharePoint создадим списки и столбцы, PowerApps поможет сделать форму, а Power Automate предоставит возможности для настройки логики бизнес-процессов. Итоговый процесс подключим к команде MS Teams. Давайте не будем терять время и посмотрим, что из этого выйдет.

Автоматизация HR процессов с использованием Microsoft Teams, PowerApps и Power Automate. Заявки на выход сотрудников

На первом этапе создаем списки и реквизиты. Нам потребуются списки:

  1. Заявки на выход сотрудников
  2. Подразделения
  3. HR по подразделениям
  4. Администраторы

Каждый список в дальнейшем сыграет свою роль, и мы увидим какую именно. Создаем реквизиты и настраиваем меню навигации:

Автоматизация HR процессов с использованием Microsoft Teams, PowerApps и Power Automate. Заявки на выход сотрудников

PowerApps

Теперь, давайте сделаем форму для списка «Заявки на выход сотрудника» с использованием PowerApps. В итоговом виде она будет выглядеть вот так:

Автоматизация HR процессов с использованием Microsoft Teams, PowerApps и Power Automate. Заявки на выход сотрудников

В поле «Сотрудник» осуществляется выбор из перечня пользователей Office 365, «Дата выхода» указывается из календаря, «Подразделение» указывается из справочника подразделений, а «HR» выбирается из справочника «HR по подразделениям»:

Автоматизация HR процессов с использованием Microsoft Teams, PowerApps и Power Automate. Заявки на выход сотрудников

Но необходимо сделать так, чтобы перечень HR, доступных для выбора, фильтровался по указанному на форме подразделению. Воспользуемся формулой для фильтрации данных в PowerApps. Для свойства «Items» поля «HR» пишем:

Автоматизация HR процессов с использованием Microsoft Teams, PowerApps и Power Automate. Заявки на выход сотрудников

Дополнительно, на форме можно сделать небольшие настройки значения по умолчанию для поля Статус. Для свойства «Default» поля «Статус» пишем:

Автоматизация HR процессов с использованием Microsoft Teams, PowerApps и Power Automate. Заявки на выход сотрудников

Если открывается форма создания элемента, то в поле «Статус» будет записано значение «Новая», иначе, в поле статус на форме будет произведена подстановка значения из столбца SharePoint для текущего элемента.

Одной из проблем PowerApps является невозможность легко получить данные из групп SharePoint. В связи с этим не удается легко настроить видимость/доступность полей или объектов на форме если вы хотели завязаться на вхождение пользователя в группу SharePoint. Но можно совершить обходной маневр. Специально для этого мы с Вами заранее создали список Администраторы:

Автоматизация HR процессов с использованием Microsoft Teams, PowerApps и Power Automate. Заявки на выход сотрудников

В данном списке присутствует поле «Сотрудник» с типом «Пользователь или группа», отображаемое только на форме и поле «Название», в которое пишется имя выбранного сотрудника, отображаемое только в представлении списка. Теперь, давайте, в PowerApps провернем небольшой трюк. Например, можно настроить доступность любого поля на условие наличия текущего пользователя в списке Администраторы. Находим свойство «Display Mode» поля «Дата выхода» и пишем:

Автоматизация HR процессов с использованием Microsoft Teams, PowerApps и Power Automate. Заявки на выход сотрудников

Согласно данной формуле, если в списке Администраторы есть хотя бы один сотрудник, логин которого совпадает с логином текущего пользователя, то поле будет доступно на редактирование, иначе, на просмотр. Для большей надежности приводим логин к нижнему регистру, а то всякие случаи бывают.

Вы могли заметить, что в заголовке формы есть кнопка «Действия над заявкой»:

Автоматизация HR процессов с использованием Microsoft Teams, PowerApps и Power Automate. Заявки на выход сотрудников

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

Автоматизация HR процессов с использованием Microsoft Teams, PowerApps и Power Automate. Заявки на выход сотрудников

После нажатия на каждую кнопку открывается дополнительное окно действий, например, если выбрано действие «Отменить заявку», то открывается дополнительное окно с возможностью ввода комментария:

Автоматизация HR процессов с использованием Microsoft Teams, PowerApps и Power Automate. Заявки на выход сотрудников

После нажатия на кнопку «Подтвердить» меняется статус заявки, причем, это возможно сделать даже без запуска Power Automate потока. Воспользуемся функцией «Patch» для свойства «OnSelect» кнопки:

Автоматизация HR процессов с использованием Microsoft Teams, PowerApps и Power Automate. Заявки на выход сотрудников

С помощью функции Patch мы обновляем элемент списка заявок, отфильтровав его по идентификатору текущего элемента. Осуществляем смену значения поля «Статус» и производим переход на основной экран. Для остальных кнопок действий логика аналогичная.

Осталось настроить поток согласования. Сделаем его в самом простом виде.

Power Automate

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

Автоматизация HR процессов с использованием Microsoft Teams, PowerApps и Power Automate. Заявки на выход сотрудников

Создаем Power Automate поток:

Автоматизация HR процессов с использованием Microsoft Teams, PowerApps и Power Automate. Заявки на выход сотрудников

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

Автоматизация HR процессов с использованием Microsoft Teams, PowerApps и Power Automate. Заявки на выход сотрудников

Нажатие кнопки «Согласовать» или «Отклонить» также приводит к запуску Power Automate потока, который производит смену статуса заявки и отправку почтового уведомления специалисту HR:

Автоматизация HR процессов с использованием Microsoft Teams, PowerApps и Power Automate. Заявки на выход сотрудников

Процесс готов.

Teams

И финальный штрих – организация совместной работы с данным процессом. Для этого подключаем процесс к команде MS Teams:

Автоматизация HR процессов с использованием Microsoft Teams, PowerApps и Power Automate. Заявки на выход сотрудников

Теперь, у всех участников команды MS Teams, есть доступ к процессу выхода новых сотрудников на отдельной вкладке.

Конечно, в логике потока можно предусмотреть многоступенчатое согласование, плюс есть возможность использовать компонент Approvals для назначения задач Power Automate. Также можно настроить отчеты и сформировать уведомления, которые будут отправляться в чат-бота Microsoft Teams. Но об этом в следующих статьях. Спасибо за внимание и хорошего всем дня!

Источник: habr.com

Добавить комментарий