スケジュール実行の設計(実行時刻・順番・休日の扱い)
Management Console でロボットを定期実行するときに決めておきたい、実行時刻の選び方、複数のロボットの順番、休日や月末の扱い、重なって実行されないための工夫を解説します。
スケジュールで決めること
完成したロボットは、Management Console でスケジュールを設定して、決まった時刻に自動で実行させるのが一般的です。ただ、「毎朝8時」と時刻を決めるだけでは、運用を始めてから困ることがあります。次の点をあわせて決めておきます。
- 実行時刻(入力データがそろう時刻と、結果が必要になる時刻の間)
- 複数のロボットの順番と、前のロボットが終わらなかったときの扱い
- 休日・祝日・月末などの特別な日の扱い
- 実行に失敗したときの再実行の方法
実行時刻の選び方
実行時刻は、「入力となるデータがそろう時刻」より後で、「結果を使う人が必要とする時刻」より前に設定します。たとえば、基幹システムの夜間処理が終わるのが朝6時で、担当者が9時に結果を見たいなら、6時半〜7時ごろが候補です。処理時間が日によって変わる場合は、遅い日の処理時間も考えて、余裕を持たせます。
また、操作するシステムの混雑する時間帯や、メンテナンスの時間帯を避けることも大切です。
複数のロボットの順番
「データを取得するロボット」の結果を「登録するロボット」が使う、というように、ロボットが順番につながっている場合、前のロボットが終わる前に次のロボットが始まると、古いデータや途中のデータで処理してしまいます。時刻をずらすだけでなく、次のロボットが最初に「前のロボットの出力ファイルが今日の日付でそろっているか」を確認し、そろっていなければ処理せずに通知する、という作りにしておくと安全です。
休日・月末の扱い
土日や祝日に動かす必要がないロボットは、スケジュールで平日だけにします。祝日の判定はスケジュールの設定だけでは難しいことがあるため、ロボットの最初に「今日が営業日か」を判定するステップを入れ、営業日カレンダー(Excel など)を参照する方法もあります。
月末だけ処理対象が増える、月初だけ前月分を処理する、といった業務の場合は、その日の処理件数や処理時間も見込んでおきます。
重なって実行させない
前回の実行がまだ終わっていないのに次の実行が始まると、同じデータを二重に処理するおそれがあります。実行間隔は処理時間より十分長くし、念のため、ロボットの最初に「実行中」を示すファイルを作り、終了時に消す、という仕組みで重複実行を防ぐ方法もあります。
※BizRobo! は RPA テクノロジーズ株式会社の製品です。本サイトは同社とは関係のない個人の解説サイトです。画面や機能の名称は、製品のバージョンによって異なる場合があります。