決まったフォルダに置かれたファイルを処理する運用(受付・処理中・完了・エラーの分け方)
担当者が共有フォルダにファイルを置くとロボットが処理する、という運用の設計を解説します。受付・処理中・完了・エラーのフォルダの分け方、書き込み途中のファイルの扱い、同時実行の注意点を整理します。
「ここに置けば処理される」運用
架空の例として、各営業所の担当者が作成した発注依頼の Excel を、共有フォルダに置いておくと、ロボットが定期的に確認して発注システムに登録する、という運用を考えます。担当者はロボットや管理画面を触らずに済み、置く場所さえ守ればよいので、利用者にとって分かりやすい仕組みです。
BizRobo! では、Management Console のスケジュールで数十分おきなどにロボットを動かし、フォルダにファイルがあるかを確認する形が一般的です(ファイルの到着をきっかけに起動する構成が取れるかどうかは、環境やバージョンによって異なる場合があります)。この運用では、フォルダの分け方と、ファイルを移すタイミングが設計の中心になります。
フォルダの分け方
ファイルの状態ごとにフォルダを分け、ファイルがどのフォルダにあるかで、処理の状況が一目で分かるようにします。
- 01_受付:担当者がファイルを置く場所。ロボットの処理対象
- 02_処理中:ロボットが処理を始めたファイルを移す場所
- 03_完了:正常に処理が終わったファイルを、結果を書き込んだうえで移す場所
- 04_エラー:処理できなかったファイルを、エラーの内容を添えて移す場所
処理の流れ
ロボットの1回の実行は、次のような流れにします。
- 受付フォルダのファイルを一覧で取得する(対象の拡張子やファイル名の形に合うものだけ)
- 1ファイルずつ、処理中フォルダに移してから処理を始める
- 入力チェックと登録を行う
- 結果に応じて、完了フォルダかエラーフォルダに移す。ファイル名に処理日時を付けると、同じ名前の再提出と区別できる
- 処理したファイルの数と結果を担当者に通知する
書き込み途中のファイルと同時実行
担当者が大きなファイルをコピーしている途中や、Excel で開いたまま保存している途中に、ロボットがそのファイルを読み込むと、壊れたデータを処理してしまいます。最終更新から数分たったファイルだけを対象にする、担当者には別の名前で保存してから名前を変えてもらう、Excel の一時ファイル(~$ で始まるもの)は対象外にする、といった工夫で防ぎます。
また、前回の実行が終わる前に次の実行が始まると、2つの実行が同じファイルを処理するおそれがあります。処理を始める前に処理中フォルダへ移すのは、このファイルの取り合いを防ぐためでもあります。移動に失敗したファイル(すでに別の実行が移したもの)は飛ばす作りにしておきます。
よくある失敗
フォルダ運用で起きやすい失敗です。
- 処理中フォルダにファイルが残ったまま、誰も気づかない(ロボットの最初に残っていないか確認して通知する)
- エラーフォルダに移したことを担当者に知らせず、処理されたと思われたままになる
- 完了フォルダのファイルが溜まり続ける(保存期間を決めて定期的に整理する)
- 担当者が受付フォルダにサブフォルダを作ってファイルを置き、処理対象から漏れる
利用者へのルールを明文化する
この運用は、置く側の担当者がルールを守ることが前提です。置く場所、ファイル名の付け方、締め切りの時刻、処理結果の確認方法、エラーになったときの直し方を1枚にまとめ、フォルダの中に「はじめにお読みください」のような案内ファイルとして置いておくと、問い合わせが減ります。
※BizRobo! は RPA テクノロジーズ株式会社の製品です。本サイトは同社とは関係のない個人の解説サイトです。画面や機能の名称は、製品のバージョンによって異なる場合があります。