windntmd
(Windntmd)
1
お世話になっております。
20時まで動くシステムに、Excelに書かれている情報を入力するロボットをOrchestratorで実行しています。
Orchestratorは19時からスタートして1時間にかけて処理をしないといけないですが、Excelに書かれている情報は複数行であり、1行ごとの処理に対してかかる時間は約3~4分程度であります。システム・ネットワーク環境によっては全ての行に対して1時間内に処理しきれない場合があります。
20時を超えると、システムに情報入力できないことで処理エラーになりますので、できれば、可能な限り多くの行の処理を行い、20時に近づいたら中止することを考えています。
今のところで考えていたのは、「For each rowで行ごとの処理が終わったら、今の時間が20時まで何分残っているのか」をロボット内で計算・分岐にすることです。
例)
・行の処理するタイミングが19時55分の場合、残り5分あるので処理する。
・行の処理するタイミングが19時58分の場合、残り2分あるので中止する。
もし、Orchestrator上でのコントロールでも可能なことがあれば、または他に対応策があれば教えていただけますでしょうか。
どうぞよろしくお願いいたします。
Yoichi
(Yoichi)
2
こんにちは
Orchestrator側はトリガーの「ジョブの実行を終了するスケジュールを設定」をONにして停止(強制停止ではなく)を指定
ワークフロー側はShouldStopアクティビティを組み合わせると可能かと思います。
windntmd
(Windntmd)
3
Yoichiさん
いつもお世話になっております。
アドバイスありがとうございます。
Orchestratorでの設定とワークフローでの設定は、両方ともしておくという理解でよろしいでしょうか。つまり、片方だけを設定すると想定した通りに動かないということでよろしいでしょうか。
Yoichi
(Yoichi)
4
こんにちは
ShouldStopはオーケストレーターからの停止信号に応じてTrue/Falseを返します。また後続は
それに応じた安全な停止方法を記述することになります。
そのため、両方の設定が必要になります。
windntmd
(Windntmd)
5
Yoichiさん
お世話になっております。
早速のご返事ありがとうございます。
いただいた内容でロボットの構築・テストしてみます。
また不明点がある際はお聞きする場合があると思いますが、その際はどうぞよろしくお願いいたします。