オーケストレーション・プロセスの一時停止の概要
一時停止タスクを使用してオーケストレーション・プロセスの実行を一時的に停止し、条件が満たされるまで待機できるようにします。
条件を満たすと、オーケストレーション・プロセスによって一時停止タスクが解放され、次のオーケストレーション・プロセス・ステップに進みます。 一時停止タスクを指定してタスク間を待機するか、一時停止をリリースして次のオーケストレーション・プロセス・ステップを開始するタイミングを指定できます。
ノート
-
オーケストレーション・プロセスの一時停止タスクを参照するステップを追加します。 オーケストレーション・プロセスの任意の時点で一時停止タスク・ステップを追加できます。 この例には、単純な3ステップのオーケストレーション・プロセスが含まれています。 たとえば、オーケストレーション・プロセスが正常に履行をスケジュールし、品目を顧客に出荷する前に支払の確認を待機する必要があるとします。
-
イベントの発生、経過時間、または解決する依存を待機するようにオーケストレーション・プロセスを一時停止するルールを設定します。
-
オーケストレーション・プロセスが次のステップに進むことができるように、一時停止タスクをリリースするリリース・ルールを設定します。 一時停止タスクをリリースする方法を次に示します。
-
タイマーが失効したとき、フローがリリース条件を満たしたとき、またはフローが条件を満たしていないときに、自動的にリリースします。
-
ユーザーがオーダー管理作業領域で手動でリリースできるようにします。
-
定期的にスケジュールされた間隔に従って自動的にリリースするスケジュール済プロセスを使用します。
-
オーケストレーション・プロセスをいつリリースするかを通知するwebサービスを使用します。
-
例
イベントが発生するまで一時停止
顧客が品目を予約し、その品目を賦払で支払うことができる取置プログラムを提供するとします。 一時停止タスクを使用して、オーケストレーション・プロセスを一時停止します。 顧客が全額を支払うと、オーケストレーション・プロセスによって一時停止タスクのリリース・サービスが呼び出され、一時停止タスクがリリースされてから、品目が顧客に出荷されます。
別の例として、履行ロケーションで在庫がある場合にのみ、各販売オーダーを出荷にリリースする必要があるとします。 在庫が使用可能になるまでオーケストレーション・プロセスを一時停止する一時停止タスクを使用します。 在庫が使用可能な場合、webサービスは一時停止タスクのリリースをコールし、一時停止タスクをリリースしてから、品目を顧客に出荷します。
イベントの発生を待機するルールを設定する場合は、通常、webサービスを使用して一時停止タスクを再開します。 このコンテキストでは、「イベント」は、Oracle Order Managementの外部で発生する何かを意味します。 ビジネス・イベントと同義ではありません。 詳細は、「イベントが発生するまでオーケストレーション・プロセスを一時停止」を参照してください。
時間経過まで一時停止
2週間配送の期日ではない出荷リクエストがある倉庫を過負荷にしないようにするとします。 オーケストレーション・プロセスを一時停止して、出荷リクエストが倉庫に送信されるまで、出荷予定日が発生するまで待機できます。
別の例として、ゲームのリリース日の7日前までのビデオ・ゲームを販売するとします。
-
販売オーダーが出荷される前に、販売オーダーをスケジュールして処理するには7日が必要です。 このリード・タイムを使用すると、ゲームが利用可能になるとすぐに出荷できます。
-
スケジュール・ステップが発生する前にオーケストレーション・プロセスを一時停止する一時停止タスクを設定し、パブリッシャがゲームを解放するまで一時停止を続けます。
-
リリース日から7日を引いた値を含む拡張可能フレックスフィールドに従って一時停止タスクをリリースするルールを設定します。 オーケストレーション・プロセスは、一時停止タスクをリリースし、販売オーダーをスケジュールしてから処理を再開します。
詳細は、「時間経過までオーケストレーション・プロセスを一時停止」を参照してください。
依存関係が解決されるまで一時停止
いくつかの例を考えてみます。
-
顧客が、コーヒー、紙コップ、砂糖、クリーマを同時に含む出荷の受領をリクエストしています。 1つの履行ラインが各品目を履行します。 たとえば、履行明細xはコーヒーを履行し、履行明細yはカップを履行します。 オーケストレーション・プロセスがこれらの各明細のスケジューリングを終了するまで、各オーダー明細を一時停止する一時停止タスクを使用できます。 オーケストレーション・プロセスでは、販売オーダーが定期的に評価されます。 すべての明細のスケジューリングが終了し、同時に顧客に出荷されます。
-
顧客は、オーケストレーション・プロセスがこれらの各明細をいつ出荷するかに関係なく、販売オーダーのすべての履行明細の請求書を同時に受け取る必要があります。 すべての品目を出荷するまでオーケストレーション・プロセスを一時停止する一時停止タスクを使用できます。 次に、すべての明細の請求書を顧客に同時に送信します。
-
会社のポリシーでは、組織の担当者が、予定日がリクエスト日より後である各販売オーダーをレビューおよび承認する必要があります。 一時停止タスクを使用して、これらの担当者がレビューおよび承認を終了するまでオーケストレーション・プロセスを一時停止できます。
詳細は、「依存関係が解決されるまでオーケストレーション・プロセスを一時停止」を参照してください。
一時停止タスクに設定した属性
一時停止タスクは、ビジネス・ルールのIF文の条件を、ルールを初めて実行したときに評価します。 条件がTrueの場合、一時停止タスクはオーケストレーション・プロセスを一時停止します。
一時停止タスクに設定する属性は次のとおりです。
属性 |
値 |
---|---|
reevaluateFlag |
|
sacType |
If文がTrueと評価されたときに実行するアクションを指定します。 sacTypeを次のいずれかの値に設定します。
|