SaaS型のデータ処理システムの中にはWebブラウザからのファイルアップロードを必要とするものが数多くあります。Webシステムにログインし、ファイルを選択、アップロードする。1日数回・数件程度の処理であれば気にならないかと思いますが、件数が増えるごとに大変になる作業です。業務を把握していれば誰にでもできる作業故に億劫にもなりがちです。
そこで登場するのがRPA!!!
本記事では、私ハイダックが作成した「ファイルの自動アップロードロボ(UiPath)」の紹介を行います。
処理概要
UiPathの処理概要
以下は、今回作成したロボの簡単な処理の流れになります。
UiPathは、フォルダを常に監視し新規ファイルが格納されることをトリガーにアップロード処理を開始します。
アップロード処理は、ログイン→アップロード→通知→ログアウト という流れになります。一度に複数格納された場合、すべてのファイルをアップロードした後、ログアウトします。
この処理が終了した後、再度フォルダの監視を行います。
アップロード状況がリアルタイムで通知されるため、端末から目を離し別の作業を行うことができます。これによって生まれる時間がRPAの醍醐味ですよね。
sweeepとは?
処理概要の中に現れている「sweeep」が今回ファイルをアップロードするシステムです。
どういったシステムかというと、請求書用のAI-OCR(※)です。
今回使用させていただいた請求書AI-OCR「sweeep」の詳細についてはこちらをご覧ください。
(※)OCR(Optical Character Recognition/Reader 光学文字認識)とは、手書きや印刷された画像データ上の文字を読み取り、コンピュータが処理できる文字データに変換する技術のことです。AI-OCRとは、そのままの意味でAI技術が組み込まれたOCRのことです。OCRにおけるAIは、読み取り精度を向上させたり、細かい設定を必要としなかったり、非定形に対応できるようにします。
ワークフロー
ワークフローは次のようになります。作成したワークフローは処理を最小限にしたものです。
File Change Trigger アクティビティにより、フォルダ内を監視します。
トリガー条件を満たした際に、フォルダ内のすべてのファイルのファイルパス(絶対パス)を取得し配列に格納します。
その配列でループを組み、アップロードを行います。
File Change Trigger はトリガー系アクティビティの一つです。トリガー系アクティビティは Monitor Events アクティビティの中で動作します。
プロパティフィールドで詳細設定を行います。今回はフォルダにファイルが格納されることをトリガーとするので上図のようになります。Path項目には監視するフォルダの絶対パスを設定します。ファイル名項目を設定することでトリガーとなるファイル名(拡張子)を制限することもできます。
さらに、トリガー条件は複数同時に設定することもできます。
設定したトリガー条件を満たした際に、下のワークフローの処理が実行されます。
実行結果
実際にワークフローを実行します。
ロボがフォルダ監視状態になると、以下のようにチャットワークに通知が届きます。
もちろん、通知手段はチャットワークに限りません。しかし、WebAPIが用意されているシステムによる通知だとスムーズに行えます。
この状態で指定フォルダにアップロードするファイルを格納します。
複数同時に格納してもよいですし、起動前に格納されていても処理されます。
すると、ロボはアップロード処理に移行し、Webを立ち上げsweeepにログインします。
ログイン処理の後、ファイルのアップロードを行います。
ファイルがアップロードされると、アップロードの完了がチャットワークにて通知されます。
三件すべて正常にアップロードされました。
その後、sweeepからログアウトします。
実際には、ログアウト前に指定フォルダを確認しファイルが存在すれば同様のアップロード処理を続けます。
処理が完了したファイルは「アップロード済」フォルダに格納されます。
これによりアップロードに失敗したもののみ、再度アップロード処理が行われます。
全件アップロードした後、フォルダ監視状態に戻ります。
今回作成したロボの動作は以上になります。
終わりに
今回作成したロボの重要な点は“フォルダを監視し処理を行う”ところです。本記事のようにWebシステムへのアップデートはもちろん以下のような自動化も実現できます。
・請求書作成…必要情報を記入したExcelファイルを指定ォルダに格納。すると、フォーマットに基づいて請求書を作成、PDFにエクスポートし任意フォルダに格納。
・ファイルの自動仕分け…ファイル名や拡張子などをもとに自動仕分け。
・メール送信…定期的にファイルを添付して送信すべき社内メール等の自動作成・送信。
上に挙げたものはほんの一例ですが、似たような業務を経験されている方がおられましたら、自動化を検討されてみてはいかがでしょうか。
RPA(特にUiPath)について、ご要望・ご相談等ございましたらお気軽にHiduac(ハイダック)までご連絡ください。