3.4.6 起動条件付きジョブネットの実行世代の滞留
実行世代に多重起動を設定していない場合,「実行中」状態の実行世代があるときに何度も起動条件が成立すると,「起動条件待ち」状態の実行世代が複数生成されます。生成された実行世代は,デフォルトでは次の図のように「起動条件待ち」状態のまま滞留します。
|
この例では,実行世代1が「実行中」状態で実行世代2が「起動条件待ち」状態のときに起動条件(2)が成立しています。実行世代1は実行中であるため,実行世代2は起動条件(2)が成立しても「起動条件待ち」状態のまま滞留します。同様に,実行世代3は起動条件(3)が成立しても「起動条件待ち」状態のまま滞留します。
(1) 実行世代の滞留の設定方法
起動条件が成立した実行世代を滞留させるかどうかの設定には,次の2種類があります。
-
繰り越して滞留させない
任意の実行世代が「実行中」状態の場合に起動条件が成立すると,「起動条件待ち」状態の実行世代を「繰り越し未実行」状態に遷移させて滞留させません。
-
繰り越さないで滞留させる
任意の実行世代が「実行中」状態の場合に起動条件が成立しても,「起動条件待ち」状態の実行世代をそのまま滞留させます。デフォルトではこの設定が選択されています。
実行世代の滞留は,[詳細定義−[起動条件]]ダイアログボックスの[起動条件成立した実行世代の滞留]で設定できます。詳細については,マニュアル「JP1/Automatic Job Management System 3 操作ガイド 15.4.5 [詳細定義−[起動条件]]ダイアログボックス」を参照してください。
次に,それぞれの動作を説明します。なお,実行世代に多重起動を設定している場合は,実行世代を滞留させるかどうかの指定に関係なく,起動条件が成立した「起動条件待ち」状態の実行世代は「実行中」状態に遷移します。
(2) 繰り越して滞留させないように指定した場合の動作
起動条件が成立した実行世代を繰り越して滞留させないように指定した場合の動作を次の図に示します。
|
実行世代1の実行中に起動条件(2)が成立すると,実行世代2は「起動条件待ち」状態から「繰り越し未実行」状態に遷移し,滞留しません。
- 補足事項
-
-
実行世代に保留属性を設定している場合や,起動条件の定義で[異常終了後の動作]に[ジョブネットの開始を保留する]または[起動条件の監視を停止する]を指定していて,かつ「異常終了」状態の世代がある場合は,「保留中」状態に遷移します。
-
スケジューラーサービスの実行抑止中に起動条件が成立した場合は,実行中の世代があっても「繰り越し未実行」状態に遷移しません。
-
(3) 繰り越さないで滞留させるように指定した場合の動作
起動条件が成立した実行世代を繰り越さないで滞留させるように指定した場合の動作を次の図に示します。
|
実行世代1の実行中に起動条件(2)が成立しても,実行世代2は「起動条件待ち」状態のまま滞留します。実行世代2は,実行世代1が終了すると「起動条件待ち」状態から「実行中」状態に遷移します。同様に,実行世代3は実行世代2の実行が終了するまで滞留し,さらに実行世代4も実行世代2および実行世代3の実行が終了するまで滞留します。デフォルトでは,この動作が選択されています。
このように任意の実行世代が「実行中」状態のときに起動条件が成立すると,起動条件が成立した数に応じて「起動条件待ち」状態の実行世代が滞留します。一つの実行世代の実行時間が長く掛かり,その間に多数の起動条件が成立するような場合は注意が必要です。