For Each Loop タスクでは、メインの統合からサブ統合を繰り返し呼び出すことができます。タスクは構成された配列変数をイテレーションし、配列内の各要素のサブ統合を呼び出します。サブ統合が呼び出される回数は、配列変数のサイズと同じです。
API トリガー ID と統合名は、実行するサブ統合を特定します。
このタスクでは、各サブ統合の実行からレスポンスを収集し、その値をダウンストリーム タスクで使用するために現在の統合に保存することもできます。次のいずれかの方法でレスポンスを収集できます。
- 配列変数で各実行のレスポンスを照合し、配列の各要素は 1 つの特定の実行からのレスポンスを受け取ります。レスポンスを照合するには、
Collect values from sub-integration output(s)
プロパティを構成します。 - すべての実行のレスポンスを 1 つの変数に集計します。レスポンスを集計するには、
Response parameter override mapping
プロパティを構成します。
始める前に
- 統合にユーザー管理のサービス アカウントが関連付けられていることを確認します。統合にユーザー管理のサービス アカウントが構成されていない場合は、デフォルトで、デフォルトのサービス アカウント(
service-PROJECT_NUMBER@gcp-sa-apigee.iam.gserviceaccount.com
)が認証に使用されます。 - サービス アカウントに Application Integration の起動元 IAM ロールが付与されていることを確認します。サービス アカウントへのロールの付与については、サービス アカウントに対するアクセス権の管理をご覧ください。
構成プロパティ
次の表に、For Each Loop タスクの構成プロパティを示します。
プロパティ | データ型 | 説明 |
API Trigger ID
|
文字列 | 実行するサブ統合のトリガー ID。 この値は、サブ統合の API トリガーの [Trigger ID] フィールドで利用できます。 |
Integration name |
文字列 | 実行するサブ統合の名前。 |
List to iterate
|
ブール値、文字列、整数、Double、JSON 型の配列。 | サブ統合の実行対象となる値のリスト。サブ統合は、リスト内の値ごとに 1 つずつ実行されます。 [Iteration element sub-integration mapping] プロパティを設定することで、反復値をサブ統合に渡すことができます。このプロパティで、反復値をマッピングする必要があるサブ統合で変数を指定します。 |
Iteration element sub-integration mapping |
なし | 現在の反復要素を割り当てる必要がある、サブ統合の変数。 |
Map to additional sub-integration input(s)
|
なし | 現在の統合からサブ統合に渡す追加の値。
このプロパティの値は Key-Value ペアの形式です。キーは現在の統合の変数で、値はサブ統合で対応する入力変数です。たとえば、 |
Collect values from sub-integration output(s)
|
なし | サブ統合の実行結果を照合します。 サブ統合が実行されるたびに、現在の統合の配列変数にサブ統合の出力を格納できます。サブ統合の出力変数を [Sub-integration output to collect from] プルダウンから選択し、現在の統合における配列変数を [Integration variable to collect into] プルダウンから選択します。配列の各要素には、特定のサブ統合実行のレスポンスが含まれます。たとえば、配列変数が |
Response parameter override mapping
|
なし | サブ統合実行の出力変数を読み取り、現在の統合の変数に保存します。 [Sub-integration output to map from] プルダウンからサブ統合の出力変数を選択し、[Integration function to override] プルダウンから現在の統合で対応する変数を選択します。[Map to additional sub-integration input(s)] プロパティ内の変数をマッピングすることで、現在の統合でオーバーライドされた変数を次のサブ統合に送信できます。その結果、サブ統合の実行からのレスポンスを累積的に集計できます。 |
Loop metadata |
JSON 配列 | サブ統合の実行の詳細(サブ統合実行 ID、エラー メッセージ、実行中に渡された変数値など)を含む出力変数。ループのメタデータには、current_iteration_count 、sub_integration_execution_ids 、failure_location 、current_element 、iteration_element 、failure_message などの出力変数が含まれます。 |
ベスト プラクティス
For Each Loop タスクに適用される使用量上限については、 使用量上限をご覧ください。
エラー処理方法
タスクのエラー処理方法では、一時的なエラーによってタスクが失敗した場合のアクションを指定します。エラー処理方式と、さまざまな種類のエラー処理方式の詳細については、エラー処理方法をご覧ください。