自動化ツールである、Microsoft Power Automate。本ブログでは、その特徴的機能である、クラウドフローとデスクトップフローの違いについての問い合わせが多いので、簡単にご紹介します。
一言で表すと、クラウドフローはクラウドサービスの自動化を行う機能。対して、デスクトップフローはPC上の操作の自動化を行う機能です。以前はフローとU Iフローと呼ばれており、少々わかりにくかったのですが、クラウドフローとデスクトップフローに名前が変更され、かなり馴染みやすくなったように思います。
Power Automateでは、クラウドフローとデスクトップフローは明確に分かれており、自動化を行いたいサービスやツールによって、それぞれを使い分けて利用します。
1. クラウドフロー(旧フロー)
Web上でAPIが用意されているサービスの自動化に利用します。APIとはアプリケーションプログラミングインタフェース(Application Programming Interface)と呼ばれるもので、サービス同士が互いに情報をやりとりするのに使用するインタフェースの仕様になります。APIを利用すると言っても、コンピューター上の仕様なので、利用するにはコードを記述する必要がありますが、Power AutomateではこのAPIを利用しやすいように、GUIを実装することにより手軽で簡単にサービス間の連携ができるようになっています。
1.1 コネクタの利用
Power AutomateではこのGUIで実装されたものを「コネクタ」と呼んでいます。様々なサービスのコネクタが用意されており、その数は430種類以上(2020年12月現在)にもなります。 ExcelやTeams等のMicrosoft Office製品をはじめ、TwitterやSlack等のMicrosoft以外のサービスのコネクタが用意されています。
※サポートされているコネクタの最新情報は、マイクロソフト社公式Webページをご確認ください。
>>サポートされているコネクタのリスト | Microsoft Power Automate
このコネクタを利用するのは簡単で、まず利用したいサービスを選択し、そこから行いたい処理(アクション)を選択するだけで利用が可能です。動作に必要な項目で利用者毎に設定する必要がある項目は予め用意されており、その項目に必要な情報を設定するだけになっています。
また、トリガーというのは、このサービスがなんらかの動作を行った時、例えばこのSharePointであれば、「項目が作成されたとき」や「ファイルが作成されたとき」に動作を行うと言ったことが可能です。 Power Automateの自動化はこのコネクタを組み合わせて作成を行います。
2. デスクトップフロー(旧UIフロー)
デスクトップフローはクラウドサービスを自動化するクラウドフローに対し、PC上のファイルやアプリケーションの操作、RPAで代表的な操作とも言える、Webブラウザへの操作を自動化するフローになります。
例えば、Excel onlineを操作するにはクラウドフローで、PC上にインストールされているExcelを操作するにはデスクトップフローで、となります。
2.1 デスクトップフローの種類
デスクトップフローは三種類あります。2020年12月に正式リリースされた統合アプリケーションの「Power Automate Desktop」。Webの記録を行って作成する「Selenium IDE」。Windowsの操作を記録して作成する「Windowsレコーダ」。この三種類があるのですが、Power Automate DesktopにはWeb操作をレコードする機能とWindowsの操作を記録する機能があるので、Power Automate Desktopを利用すれば良いかも知れません。
2.2 Power Automate Desktop
Power Automate Desktopとは、2020年5月に買収したSoftomotive社のWinAutomationがベースになっています。Power Automate DesktopはPC上の操作を行う性質上、別途インストールが必要になり、Webブラウザからの操作ではなく、アプリケーションでの起動になります。
※「Power Automate Desktop無償と有償の違い」を知りたい方はこちら>>
クラウドフローと同様にアクションという形で、行いたい処理を順次並べて作成していきます。操作一つ一つを記述していく必要があるため、クラウドフローに比べると、少しプログラミング的思考が必要になってきます。逆に言えば、それだけ多彩な処理が可能ということになります。
このPower Automate DesktopでWebの操作やPC上のアプリケーションの操作、PC上のファイル操作の自動化を作成します。
余談ですが、Power Automate Desktopを学習するには、まだ情報が少ないので、WinAutomationでWebサイトを検索すると、たくさんの知見が揃っています。
3. クラウドフローとデスクトップフローの連携
クラウドフローとデスクトップフローですが、別々で作って動作させて終わりでは、せっかくの自動化の意味がありません。この二つの連携ですが、別々で作ったものを連携させるのは、プログラミング等の経験がある方ですと、手間では?と考えてしまうかも知れません。
しかし、当然ながらそこはしっかり考えられていて、Power Automateではクラウドフローにデスクトップフローを選択して組み込むだけで動作します。
実はPower Automateは当初はクラウドフローのみを提供したMicrosoft Flowという製品でリリースされており、デスクトップフローの機能は後から追加された機能になっています。そのため、このクラウドサービスとデスクトップとの橋渡し機能は十分に考えられており、複雑な設定をしなくても動作するようになっています。
デスクトップフローに値を渡したい場合は、引数として設定しておけば、クラウドフローに組み込む際に、引数として表示され、それに値を設定するだけで、値が渡ります。また逆も然りで、デスクトップフローから値を受け取りたい場合は、戻り値として指定しておけば、クラウドフロー上で値を受け取ることが出来ます。
4. おわりに
Power Automateには二つのフロー、クラウドフローとデスクトップフローの二つがあり、それぞれWeb APIとPC上の操作であるという違いはご理解頂けましたでしょうか?この二つを利用することにより、クラウドとデスクトップ間での連携が容易となり、多彩かつ手軽な自動化が可能になっています。この特徴がPower Automateの優位性になっていると考えています。