If Error
フローを停止せずエラーを処理するため、別のアクションを指定します。
If Error関数は、フローのコンテナーとして表示され、以下を指定できます。
-
Try:1つ以上のアクションや関数を実行します。
-
If Error::[Try]セクションのいずれかのステップでエラーが発生した場合に実行する代替アクションや機能を指定します。
-
Outputs(オプション):出力フィールドで、フローの以後のステップで使用できます。それぞれの出力に割り当てられる値は、エラーが発生したかどうかによって異なります。
ドロップダウンを使用して、TryステップとIf Errorステップを切り替えます。
Try
新しいIf Errorコンテナーをフローに追加する時は、まず[Try]セクションでステップを定義する必要があります。これは、実行すべき1つ以上のアクションや関数です。このコンテナーに、フローの場合と同様にカードを追加します。
フローに存在するステップの組にエラー処理を追加するには、Tryブロックに含めるカードの右側にIf Errorブロックを挿入し、それらのカードを最も右側のものから1つずつ順にドラッグして組み込みます。
手動でエラーを修正する前にフローのステップを自動的に再試行するには、「フローにおけるカードのエラー処理の設定」を参照してください。
If Error
If Errorブロックには、エラーを処理するためのステップが含まれます。フローの他の場所と同様に、アクションや関数を挿入します。
エラーオブジェクトが各If Errorブックに追加されます。このオブジェクトには、Tryブロック内のエラーの詳細が含まれており、結果としてIf Errorブロックに切り替わります。これには、次のものが含まれます。
-
message:エラーメッセージのテキスト(ある場合)。
-
code:エラーコード(500など)。
-
method:エラーが起こった場所のステップのID
-
flo:フローのID。
-
execution:フローの特定の実行のID。エラー処理のステップでは、これらの値を使用できます。たとえば、エラーの詳細をメールで送信する、または予期されるエラーかどうかに応じて処理を行うかどうかを決定するなどを行えます。
ReturnカードとContiune Ifカードは通常はフローを終了しますが、TryまたはIf Errorブロック内では動作が異なります。TryとIf Errorのブロックは、匿名のヘルパーフローと考えることができます。ヘルパーフローを呼び出したときと同様に、Returnを使用すると親に戻ります。このため、TryまたはIf Errorブロック内でReturnまたはContinue-If(falseの場合)を使用すると、If Errorコンテナーの直後のステップに実行が進みます。フローを継続せず停止するには、Return ErrorやReturn Error Ifを使用するか、またはContinue-IfをIf Errorの外側で使用します。
出力(オプション)
If Errorの前に実行されるカードから、TryまたはIf Errorブロックの中に出力をドラッグできますが、TryまたはIf Errorブロックの中から、If Errorの後に実行されるカードに出力をドラッグすることはできません。これは、TryやIf Error内のステップは必ず実行されるとは限らないためです。この問題を回避するには、オプションのOutputs機能を使用します。
-
Outputsにアクセスするには、If Errorコンテナーの右上にある[View Outputs(出力の表示)]をクリックします。これにより、TryブロックとIf Errorブロックの右側にペインが開きます。
-
クリックして新しい出力を追加します。名前を入力し、型を選択します。2つの入力が各出力の下に表示されます。
-
出力をTryブロックから2つの入力フィールドのいずれかにドラッグします。これはエラーが発生しない場合です。
-
出力をIf Errorブロックからもう一方の入力フィールドにドラッグします。これはエラーが発生した場合です。
このペインの出力は、フローの以後のステップにマップできます。