April 3, 2021

Роботизация процессов (RPA) с помощью Power Automate Desktop

Сегодня мы с вами познакомимся с одним интересным сервисом от компании Microsoft под названием Power Automate Desktop. Небольшой спойлер – Power Automate Desktop используется для роботизации процессов. Итак, давайте начинать. В начале немного теории про RPA (Robotic Process Automation) и Power Automate.

RPA — это форма автоматизации бизнес-процессов, в которой искусственный интеллект выполняет повторяющиеся задачи для того, чтобы снизить нагрузку с реальных людей и высвободить время для решения других, требующих внимания людей задач.

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

В рамках линейки сервисов Microsoft 365 существует сервис Power Automate, который позволяет создавать потоки взаимодействия с данными с помощью коннекторов к большому количеству источников. В большинстве последних обновлений данного сервиса Microsoft делает немалый упор на возможности роботизации, в частности, активно развивается отдельный подтип потоков Power Automate под названием UI Flows.

Данный подтип потоков позволяет записывать действия пользователей в окне браузера и в дальнейшем воспроизводить их при выполнении определенных условий. Но только лишь UI Flows дело не ограничивается и относительно недавно был выпущен сервис Power Automate Desktop, который представляет из себя клиентское приложение, устанавливающееся на рабочую машину.

С помощью Power Automate Desktop можно записывать и воспроизводить множество действий, которые связаны уже не с веб-интерфейсом различных сайтов, а с клиентскими приложениями на сервере. Теперь автоматизация повторяющихся действий стала еще проще и удобнее.

Как установить Power Automate Desktop?

Переходим на сайт сервиса Power Automate и в правом верхнем углу находим пункт Установка.

Выбираем Power Automate Desktop, скачиваем и запускаем установку приложения. Сама установка не представляет из себя ничего сложного. Соглашаемся с основными пунктами и нажимаем Установить.

После установки нам предложат установить дополнительные расширения Power Automate для браузеров Chrome, Edge и Firefox и перейти к запуску приложения Power Automate Desktop.

После запуска приложения необходимо указать учетную запись для подключения к Microsoft 365 и после удачной авторизации можно перейти к созданию нового потока Power Automate Desktop.

Как использовать Power Automate Desktop?

Попробуем создать новый поток и посмотреть, какие возможности нам доступны. Создаем поток с именем Hello Flow.

После создания нового потока открывается дизайнер, который визуально разбит на 4 основные области:

  1. Панель с доступными действиями для использования их в автоматизации процессов;
  2. Лента с действиями сохранения, воспроизведения и записи действий внутри потока;
  3. Раздел переменных потока;
  4. Основной холст для размещения действий.

Откроем раздел Message boxes, выберем действие Display Message и разместим его на холсте, после чего автоматически откроется окно настроек. Пишем заголовок и текст сообщения.

Сохраняем действие, сохраняем поток и нажимаем кнопку выполнения. Посмотрим, что получилось. Кажется, все хорошо.

Концептуально все аналогично облачному Power Automate: есть набор действий, которые необходимо разместить на холсте и настроить их выполнение. Давайте попробуем что-нибудь слегка посложнее и выполним запуск какого-нибудь приложения и запись действий внутри него.

Выбираем из раздела System действие Run application и размещаем его на холсте. Указываем путь к приложению. Пусть это будет калькулятор Windows. Дополнительные настройки не указываем, аргументы не передаем.

Запускаем поток. Калькулятор успешно запущен.

Не закрываем калькулятор, выбираем действие из раздела UI AutomationClick UI element in window и размещаем его после запуска приложения на холсте.

Выбираем Add a new UI element и переходим в открытое приложение калькулятора. Нам нужно записать нажатие на кнопки. Запись производится при нажатой кнопке CTRL на клавиатуре. Давайте запишем нажатие на цифру 2. Сохраняем записанное действие. Обратите внимание, что имитировать можно не только левую кнопку мыши, но и правую, двойной клик и так далее.

Теперь добавляем еще несколько Click UI element in window действий для записи нажатия на кнопки. Нам нужно получить нажатие на кнопки «2 + 2 =», чтобы получить результат 4. Значит у нас будет 4 действия нажатий.

Сохраняем поток и отправляем его на выполнение.

Все получилось, мы «роботизировали» вычисление простой формулы на калькуляторе.

Теперь давайте сделаем еще один сценарий. При запуске облачного Power Automate потока будем запрашивать входные параметры и пробрасывать их в «наземный» Power Automate Desktop поток, который в свою очередь будет писать их в Excel файл, лежащий в отдельной папке на жестком диске. Пусть в качестве примера это будет запрос справки 2НДФЛ.

Для начала создадим несколько переменных в Power Automate Desktop потоке.

Сделаем 4 переменных – почта инициатора, количество экземпляров, год и дополнительная информация.

Создадим простенький Excel файл, который будем заполнять потоком. Всего 5 столбцов в таблице.

Теперь переходим в облачный Power Automate и устанавливаем локальный шлюз передачи данных между «землей» и облаком.

Устанавливаем и настраиваем шлюз, после чего создаем мгновенный настраиваемый поток Power Automate, запускаемый по кнопке с кубиком старта потока Power Automate Desktop.

Облачный поток готов. Теперь осталось немного настроить наземный поток Power Automate Desktop. Добавляем действие запуска Excel файла – Launch Excel и прописываем путь до файла.

Теперь добавляем несколько действий Write to Excel worksheet для заполнения Excel файла и указываем входные переменные, которые мы определяем в облачном потоке Power Automate.

Возвращаемся в облачный поток Power Automate и запускаем его. Указываем входные параметры.

Результат не заставляет себя ждать. Все работает отлично.

Итого, Power Automate Desktop представляет из себя клиентское приложение, интегрированное через локальный шлюз данных с облачным сервисом Power Automate.

Power Automate Desktop позволяет роботизировать многие сценарии, начиная от записи кликов мышки на объекты, заканчивая созданием учетных записей в Active Directory, заведением заявок в HelpDesk, взаимодействием с компонентами служб Azure и обращением к веб-сервисам.

Практически любой сценарий, который необходимо «роботизировать», поддерживается за счет возможностей Power Automate Desktop. А за счет доступных опций совместной работы с облачными сервисами, раскрывается огромный потенциал данного приложения.

Попробуйте установить Power Automate Desktop и изучить его возможности, на примере автоматизации ваших рутинных задач. Уверен, что, как минимум, некоторые из них получится переложить на плечи «робота».

Источник: https://habr.com/ru/post/532598/