Repeat for eachループ
Repeat for each ループは、指定されたリスト内の各アイテムに対して、ステップのブロック内のアクションを実行します。 繰り返すように選択したアクションでは、リスト内のすべてのアイテムが処理されるように、Repeat for eachループのdatatreeから出力されたデータを使用する必要があります。 Repeat for each blockの下にネストされたアクションは、リスト内のすべてのアイテムに対して実行されます。
たとえば、Repeat for each blockを使用すると、請求書明細アイテムのリスト内の各アイテムを処理するループを作成できます。
Repeat for eachは、Repeat control statementの一種です。
Repeat for eachループをレシピに挿入するには、レシピエディターで+(プラス)ボタンをクリックして新しいステップを追加し、Repeat for eachを選択します。
Repeat for eachを選択
Workatoは、リスト内の各アイテムに対して実行するアプリとアクションを設定できるステップのブロックをレシピに追加します。
Repeat for each block
例: Repeat for eachループ
次の例は、Repeat for eachループを使用して、バッチトリガーでSalesforceアカウントをZendeskに組織として同期する方法を示しています。
Repeat for eachループを使用して、Salesforceアカウントのリストを反復処理します。 サンプルレシピ
この例では、トリガーがSalesforceアカウントのリストを返します。 Zendeskはバッチアクションをサポートしていないため、各SalesforceアカウントをSalesforceからZendeskに1つずつ追加する必要があります。
リストデータピルをRepeat for each blockに渡す必要があります。 Input listフィールドを選択すると、次の画像に示すように、datatreeで使用できるのはリスト型データピルのみです。 リストデータピルは、スタックアイコンで識別できます。
リストデータピルをRepeat for each blockのInput listフィールドにマッピングします。 サンプルレシピ
CLEAR STEP OUTPUT
Repeat for eachループを使用する場合は、各反復のデータを個別に処理するために、Clear step outputをYesに設定します。 この設定は、ループ内でIF条件を使用する場合に重要です。前の反復が現在の反復に影響しないようにするためです。
詳細については、リスト管理のドキュメントを参照してください。
アクションが繰り返されるときに各リストアイテムの値が使用されるように、Repeat for each出力datatreeのデータピルをマッピングする必要があります。 たとえば、トリガーが2つのSalesforceアカウントを取得する場合、Repeat for each datatreeのデータピルを使用すると、Create organizationアクションは、最初の反復で最初のSalesforceアカウントのデータを使用してZendesk組織を作成し、2回目の反復で2つ目のSalesforceアカウントのデータを使用してZendesk組織を作成します。
Repeat for each blockのdatatreeからデータピルを使用します。 これにより、反復処理されるリストの値が使用されます。 サンプルレシピ
次の画像は、Repeat for each datatreeからのマッピングを示しています。
データピルはRepeat forステップのdatatreeからマッピングされています。 サンプルレシピ
Repeat for eachループのその他の例とリスト処理の詳細については、リスト管理のドキュメントを参照してください。
Repeat for each in batches
場合によっては、アップストリームのアプリまたはシステムがデータを送信する速度が、ダウンストリームのアプリまたはシステムが受信できる速度を上回ることがあります。 Repeat for each in batches機能を使用すると、バッチサイズを設定してデータを処理できます。 大規模なデータセットは、転送のために小さなバッチに自動的に解析されます。 データセット内の各アイテムは1回だけ処理されます。
たとえば、Repeat for each in batches機能を使用して、CSV内のリードのリストからSalesforceリードのバッチを作成できます。
使用方法
Repeat for each in batches機能を使用するには、次の手順を実行します。
Workatoアカウントにサインインします。
プロジェクトに移動します。
新しいレシピを作成するには、Create > RecipeをクリックするかC+Rを押します。または、既存のレシピをクリックしてEdit recipeを選択します。
+(プラス)ボタンをクリックして新しいステップを追加します。
Repeat for eachを選択します。
Repeat for eachを選択
Workatoはステップのブロックをレシピに追加し、各アイテムに対してステップを繰り返すリストを設定ステップを自動的に選択します。
Repeat for each blockで各アイテムに対してステップを繰り返すリストを設定
Input listフィールドに入力リストデータピルを入力します。
Input list
Repeat modeドロップダウンメニューからBatch of itemsを選択します。
Repeat modeドロップダウンメニュー
Batch sizeフィールドを設定します。 バッチサイズが指定されていない場合、または指定された数値が1未満の場合、デフォルトで100になります。 バッチサイズとしてデータピルも入力できることに注意してください。
Batch sizeを設定
これは、Batchタグ付きのFor eachステートメントに反映されていることを確認できます。
Repeat for each loopのバッチサイズ
詳細については、サンプルレシピを参照してください。
Last updated: