時間の一時停止オーケストレーション・プロセス
一時停止タスクを設定して、オーケストレーション・プロセスの実行を日時が経過するまで一時的に停止します。
ノート
-
Assignアクションを使用して、waitDateTime変数を設定します。
-
waitDateTimeの期間は指定しないでください。 たとえば、期間として5時間を指定すると、ルールによってその期間が既に発生した日時に変換され、一時停止が既に発生したかどうかを判断するために使用される日付であるため、ルールはタスクを一時停止しません。 かわりに、日時を指定します。
たとえば、
Header.getAdjustedDate(null, 1)
では、現在のシステム日付を取得するように指定し、current system date plus one day
を待機してから一時停止を解放します。関数の最初のパラメータには、dateTimeを使用します。 たとえば、スケジュール出荷日の2日前まで待機するには、
Header.getAdjustedDate(FLine.ScheduleShipDate,-2)
を使用します。 -
reevaluateFlagは、ルールのIF部分の条件を評価して、条件が変更されたかどうかを判断します。 ルールを定期的に評価する必要がある場合にのみ、reevaluateFlagをYに設定します。 Yに設定した場合は、waitDateTimeに使用する間隔を慎重に検討してください。 たとえば、getAdjustedDateを毎分リフレッシュするように設定した場合、reevaluateFlagによって、IF文の条件がTrueに評価されるまで、1分ごとにIF文が実行されます。
詳細は、「オーケストレーション・プロセスを一時停止するためのガイドライン」を参照してください。
予約前の明細の一時停止
オーダー管理で予定されているが、予定出荷日がリクエスト出荷日と同じではない履行明細を一時停止する例を次に示します。 Global Order Promisingを設定して手持数量に従って納期処理しますが、手持数量がまだ使用できない場合に明細を予約しないとします。
一時停止するかどうかを決定するコードを次に示します。
ノート
コード |
その意味 |
---|---|
|
requestShipDateが履行明細のscheduleShipDateより小さい場合は、一時停止を続行します。 |
|
requestArrivalDateが履行明細のscheduleArrivalDateより小さい場合は、一時停止を続行します。 |
また、倉庫が別のタイム・ゾーンにある状況を処理する条件を追加することもできます。これにより、スケジュール出荷日がリクエスト出荷日より1日後になる可能性があります。