JP1/Automatic Job Management System 2 解説
ジョブが異常発生したときにだけ処理を実行させるジョブネットの定義には,リカバリージョブ,またはリカバリージョブネットを使用します。
リカバリージョブ,リカバリージョブネットは,ジョブまたはジョブネットの属性定義で「種別」を「リカバリ」とすることで設定できます。また,リカバリージョブ,リカバリージョブネットは,すべてのジョブ・ジョブネットに設定できます。
- <この項の構成>
- (1) リカバリージョブを使ったジョブネットの定義例
- (2) 一つのリカバリージョブに複数の先行ジョブを定義した例
(1) リカバリージョブを使ったジョブネットの定義例
「在庫チェックを実行して,在庫数が十分であれば受注伝票を作成する。在庫数が不足している場合はジョブを異常終了して発注伝票を作成したあと,受注伝票を作成する。」というジョブネットを,リカバリージョブ使って定義する例を次に示します。
図3-42 リカバリージョブを使ったジョブネットの定義例
この例では,「在庫チェック」は,実行の結果,在庫数が不足している場合は戻り値5以上を返すものとします。
まず,「在庫チェック」の終了判定の定義を「しきい値による判定」とし,異常しきい値を4とします(戻り値が4以下ならば正常終了,戻り値が5以上ならば異常終了します)。「在庫チェック」が正常終了した場合に次に実行する「受注伝票作成」は,「種別」は「通常(デフォルト)」のままにします。異常終了した場合に実行される「発注伝票作成」は,属性定義の「種別」を「リカバリ」とします。さらに「発注伝票作成」のあとに実行される「受注伝票作成R」も同様に「リカバリ」を設定します(リカバリージョブまたはリカバリージョブネットの後続ユニットには,リカバリージョブ,リカバリージョブネットしか定義できません)。
これによって,「在庫チェック」の実行結果,戻り値が4以下の場合は在庫数が十分であるとして「在庫チェック」は正常終了し,後続ジョブの「受注伝票作成」が実行されます。一方,戻り値が5以上の場合は,在庫数不足として「在庫チェック」は異常終了し,リカバリージョブの「発注伝票作成」が実行されます。さらに「発注伝票作成」が正常終了すると,リカバリージョブの後続ジョブである「受注伝票作成R」が実行されます。
なお,先行ジョブの異常終了によって実行されたリカバリージョブまたはリカバリージョブネットが正常終了しても,それらが定義されたジョブネット自体は異常終了として扱われます。また,リカバリージョブまたはリカバリージョブネットに先行ジョブが定義されていない場合,それらが実行されることはなく,「未実行終了」となります。
- 補足事項
- ORジョブをリカバリージョブとして定義する場合は,ORジョブの先行ジョブとなるイベントジョブも,後続ジョブもリカバリージョブとして定義します。
(2) 一つのリカバリージョブに複数の先行ジョブを定義した例
一つのリカバリージョブまたはリカバリージョブネットに対して複数の先行ジョブを定義できます。この場合,複数ある先行ジョブのすべてが異常終了したときにだけリカバリージョブまたはリカバリージョブネットが実行されます。一つのリカバリージョブに複数の先行ジョブを定義した例を次に示します。
図3-43 複数の先行ジョブを定義した例
この場合,リカバリージョブAは,標準ジョブA,標準ジョブB,標準ジョブCすべてが異常終了した場合にだけ実行されます。また,リカバリージョブBは,リカバリージョブAが正常終了したあとに実行されます。
Copyright (C) 2006, 2010, Hitachi, Ltd.
Copyright (C) 2006, 2010, Hitachi Software Engineering Co., Ltd.