ロボットの動作を途中で正常終了させる方法について

皆様お知恵をお貸しください。
ロボットが作業を行う際、ルートによってその後の作業は行わず正常に終了したいです。
しかし「ワークフローを終了」アクティビティを使うとエラーメッセージが出て止まってしまいます。
スローとトライキャッチの併用や、ループを抜けるアクティビティを使用することも考えたのですが、下記の問題があります。

・トライキャッチ内に設置されている箇所がある
・トライキャッチのキャッチ内に設置されている箇所がある
・ループ内のさらにループ内に設置されている箇所がある
・フラグ判定で以降の処理を飛ばすのが難しい箇所に設置されている箇所がある
・孫のワークフロー内に設置されている箇所がある

エラー文を発生させず、スムーズに処理を終了させる方法は何かないでしょうか?
何卒よろしくお願いいたします。

すみません、調べていったところメインのワークフローであれば「Return」アクティビティを使用することでエラーは回避できそうでした。

>例外を生成せずにワークフローから正常に終了する「Return」アクティビティによって解決されると思います。

孫のワークフローの場合は「Return」アクティビティでは対応できないようなので、最悪メインに戻ってきた際に「Return」をかけるしかないかと考えております。

もしも孫ワークフローで停止できるのであればそれが一番なのですが、もし方法をご存じの方がいらっしゃいましたら引き続きよろしくお願いいたします。

こんにちは

シーケンスのみで組んでいるのであれば、一つ一つのワークフローファイル単位で抜けていくのが基本かと思います。(そうしないと保守性が担保できなくなるように思えます)

ビジネスロジック上このようなルートが避けられないのであれば、フローチャートやステートマシン等を使った方が良いかもしれません。

1 Like

ご返信ありがとうございます
やはりシークエンスのみで対応するには無理がありましたか、フローチャートのが良さそうですね…
ありがとうございました

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.