ServiceNowの新バージョンであるSan Diegoが正式にリリースされました。
FlowDesignerの新機能である「Try flow logic」についてまとめました。
Try flow logicとは
フローロジック内でエラーが発生した場合でも、フローの実行を継続できるようにする機能です。
javascriptのtry catch文と同じイメージで良いかと思います。
今までは自作アクションの中にtry catch文を実装していましたが、
今回のバージョンアップを機に、ローコードで実装できるようになりました。
Try flow logicを使用する場合、
既存のフローロジックであるIfやFor Eachと同様に入出力の指定は不要です。
またTryブロック内でエラーが発生した場合は、エラーとなったアクションのステータスが「Completed (error caught)」となります。
詳しくは製品ドキュメントを参照してください。
Try flow logicの使い方
①Actionフィールドの「+」ボタン> Flow Logicをクリック> Tryをクリックします。
➁Tryノードの中の+ボタンをクリックして、Tryブロック内で実行したいAction/ Flow Logic/Subflowを選択します。
thenの横にある+ボタンをクリックして、Tryブロック内でエラーが発生した場合に実行する処理を選択します。
Try flow logicを有効的に使用する想定ケース
OOTBのAction/ Flow Logic/Subflowを使用する場合
カスタムで作成したアクション等には自前でエラー処理を追加することができますが、
OOTBのアクションに処理を追加することは推奨されていません。
ただ想定外のエラーが発生する可能性はあるので、
その対応策としてTry flow logicを使用すると効果が見込まれます。
外部システムと連携する場合
フローの中で外部システムとの連携をする場合、
ネットワークエラー等が発生するとレスポンスが返ってこない場合があります。
Try flow logicを使用して対策を立てておくことができます。