時間経過までオーケストレーション・プロセスを一時停止
一時停止タスクを設定して、オーケストレーション・プロセスの実行を日時が経過するまで一時的に停止します。
ノート
-
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日後にスケジュール出荷日が発生する可能性があります。