ExceptionReturn - エラー処理フローの終了

エラー処理フローから呼出し元フローに復帰するための終了コンポーネントです。

■ストリーム情報

入力フォーマットすべて
接続数1
説明 すべてのストリームを入力できます。
出力フォーマットNONE
説明 入力ストリームをそのまま出力します。

■コンポーネントプロパティ

名前プロパティ型マッピング説明
トランザクションchoice- トランザクションが有効な場合にコミット、またはロールバックを実行するかどうかを指定します。 トランザクションが無効な場合は無視されます。
コミット [true] - コミットを実行します。
ロールバック [Rollback] - ロールバックを実行します
戻り値string入力&出力 フローの戻り値です。
出力形態choice- ループによって複数回このコンポーネントに入力されるストリームのレコードをまとめるかどうかを指定します。
詳しくは、下記トピック「出力形態」を参照してください。
ストリームをまとめる [true] - ストリームをまとめます。
最後のストリーム [false] - 最後のストリームのみを出力します。
コンテナ [PackStreams] - コンテナとして出力します。
エラー処理後の動作choice- エラー処理フローからの復帰先を指定します。
次のコンポーネント [true] - エラーが発生したコンポーネントに復帰し、その次のコンポーネントを実行します。
フローの終了 [false] - 呼び出し元フローに復帰し、そこでフローを終了します。

■ループ処理

ループの終点となります。ループしている場合、このコンポーネントを実行した後、最後にループの起点となったコンポーネントに戻って処理を継続します。呼出し元フローへの復帰はすべてのループが終了した後に実行します。

■トランザクション処理

コミット何もしません。
ロールバック何もしません。

■エラー処理

タイプパラ
メータ
エラー処理フロー
へのストリーム
エラー
コード
説明
汎用 なし コンポーネントの入力ストリーム なし 出力形態が「ストリームをまとめる」で、かつフィールド定義の異なるストリームが入力された場合

■エラー処理後の動作

エラー処理フローがこのコンポーネントで終わった場合、呼出し元フローに復帰します。その後の動作は、エラー処理後の動作の値によって決まります。エラー処理フローがこのコンポーネント以外の終了コンポーネントで終了した場合、フローの実行がそこで終了し、リクエストも終了します。

エラー処理後の動作が「次のコンポーネント」の場合

呼出し元フローのエラーが発生したコンポーネントに戻り、そこからリンクしている次のコンポーネントに制御が移ります。次に実行するコンポーネントは、前のコンポーネントでエラーが発生しなかった場合と同様に処理を継続します。
コンポーネントの出力ストリーム、つまりエラー処理フローが返す出力ストリームは、そのコンポーネントが正常に実行された場合と同じ型のストリームでなければなりません。たとえば、メインフローで出力ストリームがCSVであるFileGetコンポーネントでエラーが発生したとき、エラー処理フローの出力ストリームは代わりのCSVデータを用意するなどの処理が必要になります。

エラー処理フローとしての戻り値

エラー処理フローとしての戻り値(このコンポーネントの戻り値の値)はコンポーネントの非表示プロパティであるエラーメッセージというプロパティに設定されます。 エラーメッセージはマッパーやBranchByExceptionコンポーネントからのみ参照可能であり、エラーの有無によってブランチして処理を切り替えることも可能です。 たとえば、メインフローでFileGetコンポーネントの次にBranchByExceptionコンポーネントを配置しておき、FileGetコンポーネントのエラーメッセージを判定して処理を分岐することができます。

エラー処理後の動作が「フローの終了」の場合

エラーが発生したコンポーネントを含む呼出し元フローを終了させます。
呼出し元フローがメインフローの場合、フローの終了はリクエストの終了となるため、そこでフローの実行は終了します。
呼出し元フローがサブフローの場合、エラーが発生したコンポーネントでサブフロー自体が終了したものとして処理が継続されます。エラー処理フローが返す出力ストリームは、そのサブフローが正常に実行された場合と同じ型のストリームでなければなりません。

エラー処理フローとしての戻り値

呼出し元フローがサブフローの場合、エラー処理フローとしての戻り値(このコンポーネントの戻り値の値)はSubFlowコンポーネントの戻り値プロパティで参照できます。

■出力形態

出力形態ではフローがループしている場合の出力ストリームの形式を指定します。このプロパティの指定により複数レコードのストリームをひとつにまとめたり、コンテナに入れて出力することができます。

いずれの場合もループによって処理されるストリーム、つまり本コンポーネントへの入力ストリーム型とフィールド定義はすべて同じである必要があります。ブランチして異なるストリーム型のストリームをまとめることはできません。

また、ループがなく入力ストリームがひとつしかない場合は最後のストリームが出力ストリームとなります。 MIMEの場合は子パートがひとつのマルチパートMIMEになるのではなく元のMIMEがそのまま出力されます。XMLの場合フィールド定義がなくともエラーにはなりません。

ストリームをまとめる

「ストリームをまとめる」を指定した場合、ストリーム型によって次のようにストリームがまとめられます。

Binary, Textストリームが連結されます。
Record, CSV, FixedLengthストリーム中のレコードをすべてまとめて単一のストリームとします。
ParameterListString[]以外のデータ型のフィールドでは最後のストリームのフィールド値になります。
String[]型のフィールドではフィールド値が配列になります。
XMLフィールド定義に添ってXMLが再構成されます。
フィールド定義がされていない場合はエラーになります。
MIMEマルチパートMIMEになります。

コンテナ

「コンテナ」は、後続のフロー処理で複数のストリームを添付ファイルにする場合などに使用します。