TaskBot実行の優先順位
AutomationAnywhereはトリガー実行できたり、ClientからもControl Roomからもスケジュール実行できたりと起動方法が沢山あるのですがそれらが競合したときにどうなるのか?について書いていきます。
Botの同一デバイスでのスケジューリング時にご参考にしていただければと思います。
####こんなときに使えるよ
#####①業務の終了時間の必要性を考慮して優先度を設定できる
例えば、「TaskBotAはTaskBotBより早い時間に終わっていなければならない」と言った要件があるときに「優先度」の設定を変えることで一方を割込みさせ、早くBot実行を終わらせることができる。
#####②予期しないBotの割込みを避ける
同じデバイスに対して複数のBot起動方法を設定することによる、意図しない割込みが発生することを防ぐことができる。
(予想していないのに、いきなりBot実行の割込みが発生したら悲しいですね)
######【Priority】
・AAE Client上でTask Botごとに設定できる
・Low, Medium, Highがあり、デフォルトはLow
Priorityの設定はAAE ClientのMain画面各Bot選択部分の下に出てきます。
(Clientからのみ設定できます。Control Roomからは設定できません。Control Room上で動かす場合はClientから設定後にControl RoomにBotのアップロードが必要。)
######【Bot起動方法】
優先される順位別に書いています。
① トリガー実行 ※
② AAE Clientからのスケジュール
③ Hot Keyでの実行
④ CRから即時実行
⑤ CR上でのスケジュール実行
⑥ AAE ClientのMain画面で即時実行
⑦ AAE ClientのWorkbenchから即時実行
⑧ 下記3つのオプションにてBotを実行する
・エクスプローラ上のatmxファイルをクリックしてBot実行
・デスクトップまたはその他の場所に作成されたショートカットを介してBotを実行
・コマンドプロンプトからBotを実行
※トリガー実行について
フォルダーにファイルが作成されたとき、ウィンドウが閉じたときなどClient上でBot実行のトリガーを設定することができます。
Bot実行中に、「割り込み」が発生するケース
割込みなんてそんなのあるの?と私も知ったときに驚きました。
・Bot起動方法にかかわらず、実行中のBotより高PriorityのBotが実行された場合
・同Priority(優先度)において、より優先度の高い起動方法でBotが実行された場合
「割り込み」が発生すると、実行中のBotは一時停止されます。
割り込んだBotの実行が終了すると、また再開します。
割り込みが発生しないケースでは、後から実行したBotがキューに溜まり、先に起動していたBotが終了し次第順次実行されます。
つまり、【Priority】>【Bot起動方法】 の考え方です。
<参考>
https://apeople.automationanywhere.com/s/article/Task-Queuing-Technology
###注意
エラーメッセージのポップアップが出ている状態だと割込み実行できないのでご注意くださいませ。
Error HandlingコマンドでBotを囲んであげるとポップアップが出たままになりませんので、こちらも併せてご利用ください。
Error Handlingコマンドとは?と思った方、こちらのコマンドのことです。
他のコマンドを囲んで利用します。
オプションでエラー時のスナップショット取得やログファイルへの書き込みができます。