MCのスケジュールで複数のロボットを順次実行するが、エラー発生時に後続ロボットを実行させないようにする方法

フォローする

Q.

MCのスケジュールにて複数のロボットを順次実行で設定し、
スケジュール実行されたロボットでエラーが発生した際に
後続ロボットを実行させないようにする設定はありますか。

例)ロボットA、ロボットBをA→Bの順にスケジュールで実行したい。
ただし、ロボットAでエラーが発生した場合、ロボットBの処理はしたくない。

A.

複数ロボットのスケジュール設定時の制御は同時実行または順次実行のみとなるため、
先行で実行されたロボットの実行結果を元に後続ロボットの動作をハンドリングする設定機能はございません。
ロボットAでエラーが発生した場合でも、ロボットBは実行されます。

回避するためには、先行するロボットが正常終了したことを示すフラグをファイルやDBに書き込み、
後続ロボットの先頭ステップでそのフラグを確認してから、以降の処理を行うようロボット内で制御します。

①先行するロボットAすべての処理が終了したら、正常終了のフラグとなるファイルを作成。
172ecc2d9c1ad4b1ac24498c9300ad3e.png

②後続ロボットBの最初のステップで①のフラグファイルが存在するか確認して、
あれば後続の処理を継続、なければ処理しない(もしくは別の処理をさせる)。
01d2dcecc63cb15e45cd132705e28cec.png

その他の手段として、Call REST Web Serviceステップを使い、ロボット実行する制御ロボットを作成し、
戻ってきた実行情報からエラーを判定して後続ロボットの実行は行わないようにする方法もございます。
※Call REST WEB Serviceに関連する不具合に伴い
Bizroboのバージョンによっては想定しない動作となる場合ございますのでご注意ください。

スケジュールで順番にロボットを実行する設定方法は以下をご参照ください。
MCのスケジュールでロボット(タスク)を順次実行させる方法