For Each Loop タスクを使用する

このチュートリアルでは、文字列の連結に For Each Loop タスクを使用する方法について説明します。このチュートリアルでは、2 つの統合(メイン統合とサブ統合)を作成します。メイン統合では、文字列配列をループを介して、配列のそれぞれの要素に対してそれを連結するサブ統合を呼び出します。メイン統合の実行後は、連結された文字列が出力されます。

このチュートリアルを完了するには、次のタスクを行います。

メイン統合を作成する

新しい統合を作成するには、次の操作を行います。

  1. Apigee UI にアクセスしてログインします。
  2. UI の左上にあるプルダウン メニューから組織を選択します。
  3. [開発] > [統合] の順にクリックします。
  4. [CREATE NEW] をクリックします。
  5. [統合を作成] ダイアログで名前と説明を入力します。
  6. サポートされているリージョンのリストから、統合のリージョンを選択します。
  7. [作成] をクリックして統合デザイナーを開きます。
  8. 統合デザイナーで、[+Add a task/trigger] > [Trigger] > [API Trigger] をクリックします。
  9. [API Trigger] 要素を統合ザイナーにドラッグします。
  10. [+Add a task/trigger] > [Tasks] > [For Each Loop] をクリックします。
  11. [For Each Loop] 要素を、統合デザイナーにドラッグします。
  12. [API trigger] 要素から接続(エッジ)を [For Each Loop] 要素に追加します。
    1. [API trigger] 要素の横にある [フォーク] アイコンをクリックします。
    2. その状態で、マウスポインタを [For Each Loop] 要素内の領域にドラッグします。
    3. マウスポインタを解放します。

メイン統合で変数を作成する

メイン統合で次の変数を作成します。

  • WordArray: 文字列配列。配列値は、連結のためにサブ統合に送信されます。
  • TempString: 一時的な文字列変数。
変数を作成するには、以下の手順を行います。
  1. メイン統合で、メニューバーの [VAR] をクリックします。
  2. [追加] をクリックします。
  3. [変数を作成] ダイアログで、次のプロパティを設定します。
    • 名前: 「WordArray」と入力します。
    • データタイプ: String Array を選択します。
    • デフォルト値: 「Hello, World, Apigee, Integrations」と入力します。
  4. [作成] をクリックします。
  5. [追加] をクリックします。
  6. [変数を作成] ダイアログで、次のプロパティを設定します。
    • 名前: 「TempString」と入力します。
    • データタイプ: String を選択します。
  7. [作成] をクリックします。
  8. [OK] をクリックして [変数] ダイアログを閉じます。

サブ統合を作成する

次に、文字列を連結したサブ統合(新しい統合)を作成します。

サブ統合を作成する手順は次のとおりです。

  1. Apigee UI で、[開発] > [統合] の順にクリックします。
  2. [新規作成] をクリックします。
  3. 統合の名前と説明を入力し、[作成] をクリックします。
  4. 統合デザイナーで、[+Add a task/trigger] > [Trigger] > [API Trigger] をクリックします。
  5. [API Trigger] 要素を統合ザイナーにドラッグします。
  6. [+Add a task/trigger] > [Tasks] > [Data Mapping] の順にクリックします。
  7. [Data Mapping] 要素をインテグレーション デザイナーにドラッグします。
  8. [API trigger] 要素から [Data Mapping] 要素への接続(エッジ)を追加します。

サブ統合で変数を作成する

サブ統合に次の変数を作成します。

  • SubIntegrationInput: 統合の入力変数。サブ統合を実行すると、この変数にはメイン統合の WordArray 変数の値が含まれます。
  • SubIntegrationOutput: 統合の出力変数。サブ統合が実行を完了すると、この変数に連結された文字列が設定されます。
  • SubIntegrationPreviousValue: 各ループの断続的に連結された文字列を保持する入力変数。この変数の値は、メイン統合から渡されます。
変数を作成するには、次の手順を行います。
  1. メイン統合で、メニューバーの [VAR] をクリックします。
  2. [追加] をクリックします。
  3. [変数を作成] ダイアログで、次のプロパティを設定します。
    • 名前: 「VARIABLE_NAME」と入力します。
    • データタイプ: String を選択します。
  4. 変数が入力変数または出力変数のどちらであるかを指定します。
    • SubIntegrationInput 変数または SubIntegrationPreviousValue 変数を作成する場合は、[Use as an input to integration] を選択します。
    • SubIntegrationOutput 変数を作成する場合は、[Use as an output of integration] を選択します。
  5. [作成] をクリックします。
サブ統合で各変数を作成する手順を繰り返します。

サブ統合を構成する

サブ統合を構成する手順は次のとおりです。
  1. [Data Mapping] 要素をクリックして、構成ペインを表示します。
  2. をクリックします。
  3. データ マッピング エディタで以下を行います。
    1. SubIntegrationPreviousValue 変数を [入力] 列にドラッグします。
    2. SubIntegrationPreviousValue 変数で、[関数を追加] をクリックし、[CONCAT] を選択します。
    3. SubIntegrationInput 変数を [CONCAT] 関数にドラッグします。
    4. SubIntegrationOutput 変数を [出力] 列にドラッグします。
  4. データ マッピング エディタを閉じます。
  5. [公開] をクリックします。

メイン統合を構成して実行する

ここでは、メイン統合に戻り、サブ統合を呼び出すように構成します。

メイン統合を構成するには、次の手順を行います。

  1. 統合デザイナーでメイン統合を開きます。
  2. [For Each Loop] 要素をクリックして、タスクの構成ペインを表示します。
  3. 構成ペインで次のプロパティを構成します。
    • [List to iterate]: [WordArray] を選択します。
    • [API Trigger ID]: サブ統合のトリガー ID を入力します。トリガー ID 値は、サブ統合の [API Trigger] 要素から取得できます。
    • [連携名]: サブ統合の名前を入力します。
    • [Iteration element sub-integration mapping]: [SubIntegrationInput] を選択します。
    • [Response parameter override mapping]:
      • [Sub-Integration output to map from] プルダウンで [SubIntegrationOutput] を選択します。
      • [Integration variable to override] プルダウンで、[TempString] を選択します。
    • [Map to additional sub-integration input(s)]:
      • [Integration variable to map from] プルダウンで [TempString] を選択します。
      • [Sub-Integration input to map to] プルダウンで、[SubIntegrationPreviousValue] を選択します。
  4. [公開] をクリックします。

メイン統合とサブ統合が正常に実行された場合は、実行の概要ダイアログで、TempString 変数に連結された文字列 HelloWorldApigeeIntegrations を確認できます。