ファイル変更トリガーの機能を試してみたところ、大変便利でしたのでご紹介致します。
トリガー処理とは?
「プロセスが開始された」とか「ファイルが変更された」などの特定のアクションを契機にロボットを実行する時に使用します。
使用する際には常時ロボットをバックグラウンド(UI要素の対する操作なしで動作するプロセス)で起動させておく必要がありますが、いつ起こるかわからないけど即対応したいような場合には便利な機能です。
バックグラウンドプロセス・フォアグラウンドプロセスとは?
フォアグラウンドプロセスの動作中はユーザーのPCをロボットが占有する事になる為、UiPathは一度に一つのフォアグラウンドプロセスしか実行できませんが、バックグラウンドプロセスはUI要素を対象としない為、複数同時に実行する事が可能となります。
設定方法
テンプレートからバックグラウンドプロセスを選択
最初から「バックグラウンドで開始」が有効になっており、UI要素を操作対象とするアクティビティ「UiPath.UIAutomation.Activities」が含まれていない事がご確認頂けるかと思います。
標準のテンプレートを以下にてバックグラウンドプロセスに変更する事も可能です
- プロジェクト設定にて「バックグラウンドで開始」を有効化する
- ワークフロー内に「UiPath.UIAutomation.Activities」のアクティビティを含まない
UiPath公式のガイドはこちら
https://docs.uipath.com/robot/lang-ja/docs/background-process-automation
トリガースコープの設定
①まずは、トリガースコープをドラッグ&ドロップで配置します。
②オプションのスケジューリングモードにて「順次」を選択し、イベントが発生する都度、処理を起動する様にしておきます。
トリガースコープ内の設定
①今回はファイル変更を条件にしたい為、トリガー内にファイル変更トリガーをドラッグ&ドロップで配置します。
②新規に作成された場合のみを条件にしたい為、変更の種類プルダウンに「Created」をチェックします。
③パスに任意のフォルダパスを指定します。
④アクション内に条件を満たした際の処理を指定できますので、今回は簡単にメッセージボックスアクティビティを配置してメッセージを出力してみようと思います。
テキストには「args.FileChangeInfo.Name+"が作成されました!"」を設定してみます。
*args.FileChangeInfo.Nameにて作成されたファイル名を取得する事ができます
動かしてみます!
以上で、ワークフローの作成が完了しましたので早速動かしてみたいと思います。
バックグラウンドプロセスですので、実行しても表面上何も変わらないですが、対象のフォルダにファイルを新規作成したところ、問題なくメッセージが表示されました!
まとめ
今回は簡単にメッセージボックスにて通知するのみに留めましたが
ファイルが保存、編集された際に関係者にメールにて周知したり、基幹システムに登録し即時に情報反映させるなど、多様な用途に利用できる機能かと思います。