呼び出し可能なレシピ by Workato - 非同期呼び出しを待機アクション
このアクションは非同期呼び出しが完了するまで待機します。 待機アクションで、Workatoはレシピを保留にし、非同期呼び出しの処理が完了したかどうかを定期的に確認します。 すべての非同期呼び出しが完了すると(成功または失敗に関係なく)、Workatoはレシピの次のステップに進みます。
このアクションは廃止されました
このアクションはRecipe functions - 非同期呼び出し待機アクションに置き換えられました
このアクションを使用するレシピは引き続き機能します。 新機能を活用するには、新しいRecipe functionsアクションを使用してください。詳細はRecipe functions FAQを参照してください。
独立したプロセスの並列実行
非同期呼び出しを待機アクションと一緒に使用して、独立したプロセスを効率的に並列実行します。 これにより、全体の処理時間が短縮されます。
たとえば、Acme社は毎日S3からSnowflakeにデータを同期します。 Snowflake内の各テーブルは一意であり、各テーブルに対してSnowflakeへの一括ロードアクションを非同期に呼び出すことができます。 そのため、複数の非同期レシピを並列実行できます。
すべての非同期レシピの処理が完了した後にSlack通知を受信するには、Waitアクションを使用します。 次のレシピステップに進む前に、すべての非同期呼び出しの処理が完了していることを確認します。
非同期アクションの待機
入力
| フィールド | 説明 |
|---|---|
| 待機する非同期呼び出し | 待機する非同期呼び出しを選択します。 このアクションで選択できるのは非同期呼び出しのみです。 |
| タイムアウト制限(分) | この待機アクションの上限を設定します。 Workatoでは最大24時間(1440分)まで待機できます。 |
出力
| フィールド | 説明 |
|---|---|
| 結果 | 非同期に呼び出されたCallable Recipesに関するメタデータ(リストサイズとリストインデックスを含む)を含むリストデータピル。 |
| すべてのジョブが成功 | すべての非同期呼び出しが正常に完了したかどうか。 |
| ジョブ成功数 | 正常に完了した非同期呼び出しの数。 |
| ジョブ失敗数 | 失敗した非同期呼び出しの数。 |
| ジョブタイムアウト数 | 入力設定で定義されたタイムアウト制限を超過した非同期呼び出しの数。 |
依存ステップには適用不可
レシピを呼び出す(非同期)を使用しても、Callable Recipesが順番に実行されることは保証されません。 ワークフローでステップを順番に呼び出す必要がある場合は、代わりにレシピを呼び出す(同期)を使用します。
FAQ - ループ内で発行された非同期呼び出しの待機
このアクションは、ループ内で開始される非同期呼び出しを取得しません。 Waitアクション自体がループ内にない場合、ループ内のすべての非同期呼び出しは取得されません。
これにより、レシピは待機せずに続行されます。 これにより、下流のアクションが失敗する可能性があります。
このアクションはループからの非同期呼び出しを待機しません
非同期呼び出しがループ内から開始される場合、Waitアクションは機能しません。
悪い例:ループから非同期呼び出しを開始
代わりに、アクション入力内の各非同期呼び出しをレシピステップとして明示的に設定する必要があります。 以下の例では、レシピがsalesテーブルとleadsテーブルを更新するために非同期呼び出しを行っています。
各非同期呼び出しはレシピステップとして明示的に設定されます
FAQ - 非同期レシピの出力を使用できない
レシピへの非同期呼び出しは応答を待機しないため、reply出力はありません。 ユースケースで呼び出されたレシピ(非同期)からの情報が必要な場合は、ルックアップ テーブルアクションを使用して情報を渡すことができます。
ルックアップ テーブルを使用した回避策
- 一意のIDを使用してレシピを呼び出します(非同期)。 メインレシピのジョブIDまたは一意のタイムスタンプを使用できます。

- 呼び出されたレシピの処理が完了したら、一意のIDを使用してルックアップ テーブルにエントリを追加します。

- 次に、同じ一意のIDを使用して、Search entriesアクションでルックアップ テーブルエントリを取得します。

Last updated: