待機アクティビティの設計
このパターンを使用して、特定のポイントで特定の条件を満たすときにのみ処理を進めるフローパスを設計します。Waitアクティビティを使用してこのパターンを設計します。
Waitアクティビティは、特定のイベントの発生、タイムアウト、またはデータベースイベントまで、プロセスの実行を保留します。明示的に閉じられた場合は、アクションフローでActivityCloseアクションを使用します。
待機が本当に終了したかどうかを検証するビジネスロジックを追加するには、WaitアクティビティのOnCloseコールバックアクションを使用します。
タイムアウトの使用
Waitアクティビティを終了するパターンの1つは、タイムアウトを設定して適切に処理する方法です。
例
例として、発注処理プロセスを考えます。このプロセスは、注文された材料を準備して梱包し、支払い確認まで待機します。注文品の梱包と出荷準備が整ってから30日以内に支払いが実行された場合には注文品が出荷されますが、そのような支払いがない場合は、注文はキャンセルされます。
##データベースイベントの使用
Wiatアクティビティを終了する他のパターンでは、Entityレコードの作成または変更というデータベースイベントをClose On
プロパティに設定します。
例
例として、採用応募者の対応プロセスを考えます。プロセスの特定のポイントで面接が1回予定されており、プロセスは、処理を先に進める前にフィードバックにより面接情報が更新されるまで待機します。
待機アクティビティの終了検証
待機が本当に終了したかどうかを検証するビジネスロジックを追加するには、WaitアクティビティのOnCloseコールバックアクションを使用します。
例
例として、採用応募者の対応プロセスを考えます。プロセスの特定のポイントで何回かの面接が予定されており、プロセスはすべての面接にフィードバックが入力されるまで待機します。
プロセスの実行時、面接が更新されるたびに、WaitアクティビティはOnCloseコールバックアクションの実行によって(1)一時的に終了します。最終的には、すべての面接のフィードバックが入力されたときにのみ終了できます。