基本のTry、Catch、Finally
エラーハンドリング/例外処理と呼ばれるTry、Catch、Finally
以下のテンプレートのまんまです。
japan.flow.microsoft.com
①失敗するかもしれない処理(try)をスコープで囲う。
②失敗した場合(catch)の処理をスコープで囲い、実行条件を設定(失敗、スキップなど)
③失敗しても成功しても実行する処理(finally)をスコープで囲い、実行条件を設定(成功、失敗、全て)
①が失敗した場合の動作
①のどこかで失敗した場合、親アクションであるスコープも失敗扱いとなる。
そして失敗の実行条件により②が実行される。
その後③が実行される。②でも失敗した場合でも必ず実行。
これを設定しない場合
各アクションの既定の実行条件は前のアクションが「成功」したときのみ。
よって、失敗したアクションの次のアクションは実行されずスキップされます。
更に次のアクションは、直前のアクションがスキップであるため実行されずスキップされます。
あとはその連鎖となり、失敗以降のアクションは実行されずフローが終了します。
Apply to each内でのエラーの場合
この場合もスコープと考え方は同じで、ループ内でエラーが発生すると、 その親であるApply to eachもエラー扱いとなる。 よってその例外処理は、次にスコープを配置して処理を行う。
これくらににしておけば30分で書けた。