条件を待つ
「条件待ち」要素は一時停止要素に代わるもので、両者にほとんど違いはありません。この要素を使用して、特定の時間まで、またはプラットフォーム イベント メッセージまで待機できます。以前の一時停止要素と同様に、ベース時間、オフセット数、単位を入力して再開時間を設定できます。さらに、待機条件を設定でき、プラス ボタンをクリックして複数の待機構成を追加できます。
Wait Element を使用する理由は何ですか?
- Sleep/pause/wait は Apex では使用できません。つまり、スレッドを一時停止することはできません。
スレッドをスリープ状態にする機能は提供予定はありません。マルチテナントの世界では、スリープ状態のスレッドは他の顧客が使用できないスレッドです。これが何度も発生するのであれば問題ありません。しかし、不適切に使用されると、サービスに悪影響を与える可能性があります。
非常に特殊な保存順序があり、これにより処理が連続して行われるようになります。トリガー後に変更された値にアクセスできるため、トランザクションをスリープ状態にするメリットはありません。
サードパーティの制限に関しては、サードパーティの待機制限に準拠するために、当社のサービスが中断されることはないと思います。これらのほとんどは一括代替手段を提供しており、ベストプラクティスとしてこれらを使用することをお勧めします。
コールアウトに関しては、Spring '14 で試験運用される新しいオプションがいくつかあり、コールアウトの実行中に一種のスリープ状態をとれるようになります。
-
自動起動フローを使用すると、待機要素を使用して睡眠動作をシミュレートするソリューションを開発できます。
-
コンピュータサイエンスでは、ポーリングまたはポーリング操作は、クライアントプログラムによって外部デバイスのステータスを繰り返しサンプリングするプロセスを指します。これらを使用して、Salesforce でポーリング ソリューションを開発できます。
待機要素フローの考慮事項
フローを一時停止する機能は強力ですが、待機要素を使用してフローを設計および構築するときには、いくつかの重要な考慮事項に留意する必要があります。
まず、前述のように、一時停止を使用する機能をサポートするフロー タイプは限られています。自動起動フローとスケジュール フローは待機要素をサポートする唯一のフローであり、サポートされていないフロー タイプがサブフロー (自動起動フロー) を呼び出す場合、待機要素を含めることはできません。レコード トリガー フローから待機要素を含むサブフローを呼び出そうとすると、エラーが表示されます (レコード トリガー フローは一時停止をサポートしていないことに注意してください)。