お世話になっております。
ローカルPCからデータ収集し、クラウドストレージ上に配置するワークフローを作成しております。
これまでのご助力もあり正常動作していますが、エラー発生時の挙動が考えていたものと異なり困っております。
恐れ入りますが、知見をお持ちの方、ご助力頂けませんでしょうか?
(Desktop Automationライセンスでデザイナーから定期実行する予定です)
ご相談内容:
ワークフロー内の各工程をコントロールコンテナでグループ化して、実行順序を制御しています。
例えば「処理3」コントロールコンテナでエラーが発生した場合、後続処理を実行したくありません。
エラーが発生した場合、後続のコントロールコンテナを実行せずにワークフローを停止する方法はございますでしょうか?
実際の処理イメージは以下のとおりです。
処理1:
事前処理として入力ファイルを所定のディレクトリに移動
処理2:
所定のディレクトリに移動したファイルを読込み、データストリームとして出力
処理3:
データストリームをAWS S3にアップロード
処理4:
所定のディレクトリに配置したファイルを異なるディレクトリに移動する
解決済! 解決策の投稿を見る。
@Masa23 さん
コントロールコンテナのコントロール入出力(正確には、コントロール入力とロギング出力と呼ぶようです)のところにも通常のツールを挿入できるので、エラーが起きてたらデータを通さない、といったフィルターをかけて処理4のコントロール入力に何も出力しないようにすればオッケーです。
※ワークフローオプションの「エラー時のワークフローの実行をキャンセルする」が効いていないのは、バグなのか仕様なのかよくわからないですね、、、
AkimasaKajitani様
お忙しいなか、アドバイスとサンプルデザインありがとうございます。
コントロールコンテナとコントロールコンテナの間にフィルターを入れ
実行ステータスを確認したいツールのToolIDのメッセージタイプを指定することで後段の処理に遷移しないようにできること確認致しました。(目的ツールのToolIDはXMLビューから特定しました)
マニュアルや例からでは辿り着けない内容でしたのでとても参考になりました。
ありがとうございました。以上となります。