Hitachi

JP1 Version 12 JP1/Automatic Job Management System 3 設計ガイド(業務設計編)


2.2.5 待ち合わせ条件を使用したユニットの実行順序制御

異なるジョブネット間のユニットの実行順序を制御するには,待ち合わせ条件を使用します。待ち合わせ条件を設定したユニットは,待ち合わせ条件で指定したユニットの実行終了を待ち合わせてから実行を開始します。待ち合わせ条件を使用することで,異なるジョブネット間のユニットの実行順序を制御できます。

待ち合わせ条件を使用する場合,環境設定パラメーターPREWAITUSEで待ち合わせ条件を使用できるように設定しておく必要があります。また,待ち合わせできるユニット種別を拡張する場合は,必要に応じて環境設定パラメーターPREWAITEXTENDを設定します。

〈この項の構成〉

(1) 待ち合わせ条件を使用したユニットの実行順序制御の概要

待ち合わせ条件を使用したユニットの実行順序制御の概要と,待ち合わせ条件を使用してユニットの実行順序を制御する流れについて説明します。

(a) 待ち合わせ条件付きユニットと待ち合わせ対象ユニット

待ち合わせ条件を設定するユニットの待ち合わせ条件には,実行終了を待ち合わせるユニット名を指定します。ここでいう「実行終了」に該当する状態は,起動条件を使用するかどうかによって異なります。

起動条件を使用しないユニットの場合

「実行終了」とは,次の状態に遷移することをいいます。

  • 正常終了

  • 警告検出終了

  • 計画未実行

起動条件を使用するユニットの場合

「実行終了」とは,デフォルトの設定では待ち合わせ対象の監視世代およびそのすべての実行世代が次の状態に遷移することをいいます。

監視世代
  • 監視正常終了

実行世代
  • 正常終了

  • 警告検出終了

待ち合わせ対象ユニットに起動条件を使用する場合,「実行終了」に該当する状態を変更できます。詳細については,「(5)(c) 待ち合わせ対象ユニットに起動条件を使用する場合の,待ち合わせ条件の設定」を参照してください。

注※

「起動条件を使用する」とは,ルートジョブネットが次の条件を満たしていることを指します。

  • 起動条件付きジョブネットである。

  • 実行登録時に,起動条件を使用する設定で実行登録している。

    即時実行の場合は,実行登録時に設定します。

    計画実行または確定実行の場合は,スケジュールルールで設定します。

  • ajsplanコマンドの-jオプションの設定で,起動条件を無効にしていない。

待ち合わせ条件で指定したユニットが実行終了すると,待ち合わせ条件を設定したユニットが実行を開始します。

待ち合わせ条件を設定したユニットのことを待ち合わせ条件付きユニット,待ち合わせ条件で指定したユニットのことを待ち合わせ対象ユニットと呼びます。

待ち合わせ条件による実行順序制御を,次の図に示します。

図2‒26 待ち合わせ条件による実行順序制御

[図データ]

この例では,ルートジョブネットB配下のジョブ3に待ち合わせ条件を設定しています。待ち合わせ条件には,待ち合わせ対象ユニットとしてルートジョブネットA配下のジョブ2を指定しています。ルートジョブネットAおよびルートジョブネットBを実行すると,ジョブ3はジョブ2の実行終了を待ち合わせます。ジョブ2が実行終了すると,ジョブ3が実行を開始します。

待ち合わせ条件を使うと,さまざまなユニット間の実行順序を制御できます。待ち合わせ条件を設定できるユニット,および待ち合わせ対象ユニットとして指定できるユニットを,次の表に示します。

表2‒9 待ち合わせ条件を設定できるユニットおよび待ち合わせ対象ユニットとして指定できるユニット

項番

ユニット種別

待ち合わせ条件を設定できるユニット

待ち合わせ対象ユニットとして指定できるユニット

1

ジョブグループ

ジョブグループ自体

×

×

2

ジョブグループ直下のジョブ

※1

×

3

ルートジョブネット

起動条件を使用しないルートジョブネット

4

起動条件を使用しないルートジョブネットの配下のユニット

※2

※2

5

起動条件を使用するルートジョブネット

※3

※3

6

起動条件を使用するルートジョブネットの配下のユニット

×※2

×※2

7

起動条件(.CONDITION)

×

×

8

ネストジョブネット

9

リモートジョブネット

リモートジョブネット自体

×

×

10

リモートジョブネットの配下のユニット

×

×

11

プランニンググループ

プランニンググループ自体

×

12

プランニンググループ直下のルートジョブネット

×

13

プランニンググループ直下のルートジョブネットの配下のユニット

※4

14

標準ジョブ

15

ジョブネットコネクタ

16

ORジョブ

×

×

17

判定ジョブ

×

×

18

イベントジョブ

ジョブネット配下のイベントジョブ

19

起動条件(.CONDITION)中のイベントジョブ

×

×

20

アクションジョブ

21

カスタムジョブ

22

引き継ぎ情報設定ジョブ

23

HTTP接続ジョブ

(凡例)

○:待ち合わせ条件を設定できる,または待ち合わせ対象ユニットとして指定できる

×:待ち合わせ条件を設定できない,または待ち合わせ対象ユニットとして指定できない

注※1

待ち合わせ条件を設定することはできますが,実行登録できません。

注※2

起動条件付きジョブネットであっても,即時実行登録時のオプションやスケジュールルールの定義によって,起動条件を使用しないで実行するようにできます。そのため,起動条件付きジョブネットの配下のユニットであっても,実行するまでは起動条件が使用されるかどうか分からないため,待ち合わせ条件を定義することはできます。同様に,起動条件付きジョブネット配下のユニットであっても,待ち合わせ対象ユニットとして指定できます。しかし,実行時に起動条件を使用すると,実行エラーになります。

注※3

起動条件を使用するジョブネットに待ち合わせ条件を設定したり,待ち合わせ対象ユニットとして指定したりするには,次の条件を満たしている必要があります。

  • JP1/AJS3 - Managerがバージョン10-00以降である。

  • 環境設定パラメーターPREWAITEXTENDで「condition」を設定している。

注※4

プランニンググループ直下のルートジョブネット配下のユニットを待ち合わせ対象ユニットとして指定する場合,ルートジョブネット名を省略した形式で指定してください。例えば,プランニンググループ直下にあるルートジョブネット配下のジョブを待ち合わせ対象ユニットとして指定する場合は,「/プランニンググループ/ルートジョブネット/ジョブ」ではなく,「/プランニンググループ/ジョブ」と指定します。

なお,待ち合わせ条件は,同一スケジューラーサービス内のユニットの実行順序を制御します。そのため,待ち合わせ条件付きユニットと待ち合わせ対象ユニットは,同一のスケジューラーサービス配下にある必要があります。

注意事項
  • 待ち合わせ条件を使用すると,ジョブフローが確認しにくくなり,業務の流れやジョブネットの階層が把握しづらくなります。ジョブフローを作成する際は,ジョブネットを入れ子にしたり,複数のジョブを一つにまとめたりするなど,できるだけ待ち合わせ条件を使用しないで,関連線を使用することを先に検討してください。

  • 待ち合わせ条件を使用する場合は,複数の待ち合わせが同一時間帯に集中して開始しないように,ジョブネットの開始予定時刻をずらすなど,待ち合わせが開始する時間帯を分散させてください。

    同一時間帯に複数の待ち合わせ条件付きユニットが待ち合わせを開始する場合は,待ち合わせ対象ユニットが終了してから待ち合わせ条件付きユニットが実行開始するまでの所要時間について,次の点を考慮してジョブフローを設計してください。

    ・待ち合わせ条件付きユニットは,待ち合わせ対象ユニットの状態確認を行います。そのため,一つの待ち合わせ対象ユニットが終了してから待ち合わせ条件付きユニットが実行を開始するまで,時間が掛かります。その時間は,同一スケジューラーサービス内のほかの待ち合わせ条件付きユニットも含めた,同一時間帯に待ち合わせをしている待ち合わせ条件付きユニット数に比例します。

    ・一つのスケジューラーサービス内で1秒間に処理できる待ち合わせ条件付きユニットの数は,4件から20件程度です。例えば,待ち合わせ条件付きユニット100個が同時に一つの待ち合わせ対象ユニットとの待ち合わせを開始した場合,待ち合わせ対象ユニットの実行が終了してから100個目の待ち合わせ条件付きユニットが実行を開始するまで,5秒から25秒程度掛かります。

    ・待ち合わせ対象ユニットに起動条件付きジョブネットを指定している場合,待ち合わせ条件付きユニットが実行を開始するまでに掛かる時間は,起動条件付きジョブネットの実行世代数に依存します。例えば,待ち合わせ条件付きユニット100個が,実行世代が10世代ある起動条件付きジョブネット100個との待ち合わせを同時に開始した場合,起動条件付きジョブネットの実行が終了してから待ち合わせ条件付きユニットが実行開始するまでに掛かる時間は,5秒から20秒程度です。起動条件付きジョブネットの実行世代が100世代ある場合だと,50秒から100秒程度掛かります。

    ・待ち合わせ条件付きユニットが実行を開始するまでの所要時間は,マシン性能や,待ち合わせ対象ユニットと待ち合わせ条件付きユニットのジョブネット構成などによって変動します。

  • 待ち合わせ条件は,JP1/AJS3 - ViewおよびJP1/AJS3 - Managerのバージョンが09-50以降の場合に使用できます。ただし,09-50以降のJP1/AJS3 - Managerを使用していても,データベースが互換用ISAM構成の場合は,待ち合わせ条件は使用できません。

(b) 待ち合わせ状態

待ち合わせ対象ユニットの実行終了を待ち合わせ条件付きユニットが把握できているかどうかを,待ち合わせ状態として表示します。待ち合わせ状態には次の状態があります。

表2‒10 待ち合わせ状態一覧

項番

待ち合わせ状態

意味

1

未完了

待ち合わせ対象ユニットの実行終了の待ち合わせがまだ完了していません。

2

完了

待ち合わせ対象ユニットの実行終了の待ち合わせが完了しました。

3

未完了(手動)

待ち合わせ対象ユニットの実行終了の待ち合わせがまだ完了していません(待ち合わせ条件の有効化によって待ち合わせ状態が未完了に変更されています)。

4

完了(手動)

待ち合わせ対象ユニットの実行終了の待ち合わせが完了しました(待ち合わせ条件の無効化によって待ち合わせ状態が完了に変更されています)。

5

未完了(再実行)

待ち合わせ対象ユニットの実行終了の待ち合わせがまだ完了していません(待ち合わせ対象ユニットは,後続ユニットの再実行によって異常終了から終了状態に変更されています)。

待ち合わせ状態が「完了」または「完了(手動)」になることで,待ち合わせ条件が成立し,待ち合わせ条件付きユニットが実行を開始します。

待ち合わせ条件付きユニットの動作を設定することができます。詳細については,「2.2.5(5) 待ち合わせ条件付きユニットの動作の設定」を参照してください。

(c) 実行順序制御の流れ

待ち合わせ条件を使ったユニット間の実行順序制御は,次の流れで行います。

  1. 待ち合わせ対象ユニットおよび待ち合わせ条件を設定するユニットを,それぞれ定義する。

    ユニットの詳細定義およびスケジュールを定義します。

  2. 待ち合わせ条件を設定するユニットに待ち合わせ条件を設定する。

    待ち合わせ条件には,次の項目を設定します。

    • 待ち合わせ対象ユニット名

    • 待ち合わせ方法

    • 待ち合わせ対象ユニットに待ち合わせる世代がないときの動作

    「待ち合わせ方法」および「待ち合わせ対象ユニットに待ち合わせる世代がないときの動作」の詳細については,「2.2.5(5) 待ち合わせ条件付きユニットの動作の設定」を参照してください。

    待ち合わせ条件の設定方法については,マニュアル「JP1/Automatic Job Management System 3 操作ガイド 5.2.6 待ち合わせ条件を設定する」を参照してください。

  3. 待ち合わせ条件付きユニットおよび待ち合わせ対象ユニットを管理するルートジョブネットを,それぞれ実行登録する。

    待ち合わせ条件付きユニットが,待ち合わせ対象ユニットの実行終了を待ち合わせます。

    ルートジョブネットの実行登録方法については,マニュアル「JP1/Automatic Job Management System 3 操作ガイド 7. ジョブネットの実行」を参照してください。

(2) 待ち合わせ条件付きユニットと待ち合わせ対象ユニットの待ち合わせルール

待ち合わせ条件付きユニットを実行登録すると,待ち合わせ条件付きユニットは,待ち合わせルールに従って待ち合わせ対象ユニットの実行終了を待ち合わせます。

待ち合わせルールは,次に示す場合で異なります。

それぞれの場合について説明します。

(a) 待ち合わせ条件付きユニットと待ち合わせ対象ユニットが同一のルートジョブネット配下にある場合

待ち合わせ条件付きユニットと待ち合わせ対象ユニットが同一のルートジョブネット配下にある場合,各ユニットは同一の世代で実行されます。そのため,待ち合わせ条件付きユニットは,同じ世代で実行される待ち合わせ対象ユニットの実行終了を待ち合わせます。

待ち合わせ条件付きユニットと待ち合わせ対象ユニットが同一ルートジョブネット配下にある場合の例を,次の図に示します。

図2‒27 待ち合わせ条件付きユニットと待ち合わせ対象ユニットが同一ルートジョブネット配下にある場合の例

[図データ]

この例では,待ち合わせ条件付きユニットのジョブ3と待ち合わせ対象ユニットのネストジョブネット1が,どちらもルートジョブネットAの配下に定義されています。ルートジョブネットAを1日に1回実行するようにスケジュールして実行登録すると,7/1と7/2にルートジョブネットAの実行予定世代が一つずつ生成されます。この場合,ジョブ3は,同一世代で実行するネストジョブネット1の実行終了を待ち合わせます。

(b) 待ち合わせ条件付きユニットと待ち合わせ対象ユニットが異なるルートジョブネット配下にある場合

待ち合わせ条件付きユニットと待ち合わせ対象ユニットが異なるルートジョブネット配下にある場合,各ルートジョブネットを実行登録すると,それぞれのルートジョブネットに実行予定世代が生成されます。このとき,待ち合わせ条件付きユニットの実行予定世代は,次の条件を満たす待ち合わせ対象ユニットの実行予定世代の実行終了を待ち合わせます。

  • 実行日が同じ

  • 実行予定を開始予定時刻順に並べた場合に,開始予定の順番が等しい

待ち合わせ対象ユニットが待ち合わせ条件付きユニットと異なるルートジョブネット配下にある場合の例を,次の図に示します。

図2‒28 待ち合わせ対象ユニットが待ち合わせ条件付きユニットと異なるルートジョブネット配下にある場合の例

[図データ]

この例では,待ち合わせ条件付きユニットのジョブ1が,待ち合わせ対象ユニットのネストジョブネット1と,異なるルートジョブネットの配下に定義されています。ルートジョブネットAおよびルートジョブネットBが7/1に2回実行するようにスケジュールして実行登録すると,7/1のルートジョブネットAの実行予定として,実行IDが@A101の世代と@A102の世代が生成されます。一方,7/1のルートジョブネットBの実行予定として,実行IDが@A103の世代と@A104の世代が生成されます。ジョブ1の世代@A103および@A104は,実行日が同じで,かつ開始予定時刻の順番が等しいネストジョブネット1の実行予定世代を待ち合わせます。そのため,ジョブ1で1番目に実行される@A103は,ネストジョブネット1で1番目に実行される@A101を待ち合わせます。同様に,ジョブ1で2番目に実行される@A104は,ネストジョブネット1で2番目に実行される@A102を待ち合わせます。7/2に実行されるジョブ1の世代も,7/2の開始予定時刻の順番が等しいネストジョブネット1の実行予定世代を待ち合わせます。

次に,JP1/AJS3の機能と待ち合わせ条件を組み合わせて使用したときの例について説明します。

ジョブネットリリース機能を使用して待ち合わせ対象ユニットのジョブネット定義を切り替えるとき

ジョブネットリリース機能を使用して,待ち合わせ対象ユニットのジョブネット定義を運用中に切り替えるとき,待ち合わせ条件付きユニットが待ち合わせるジョブネット定義も,自動で切り替わります。

待ち合わせ対象ユニットをジョブネットリリースする例を,次の図に示します。

図2‒29 待ち合わせ対象ユニットをジョブネットリリースする例

[図データ]

この例では,ルートジョブネットAがリリース登録されており,リリース日時になると,リリースID「001」のジョブネット定義がリリースされます。リリース日時は7/2の00:00です。ルートジョブネットAを実行登録すると,7/1の実行予定世代@A101はリリースID「AJS_AUTO」のジョブネット定義で,7/2の実行予定世代@A103はリリースID「001」のジョブネット定義で生成されます。この場合,ジョブ1は,7/1まではリリースID「AJS_AUTO」のネストジョブネット1の世代@A101と待ち合わせ,7/2以降はリリースID「001」のネストジョブネット1の世代@A103と待ち合わせます。

実行登録後に実行予定世代の開始予定の順番を変更するとき

実行登録後に計画一時変更などで実行予定世代の開始予定の順番を変更するとき,待ち合わせ条件付きユニットが待ち合わせる待ち合わせ対象ユニットの実行予定世代も,変更後の開始予定の順番に合わせて自動で変更されます。

計画一時変更で実行予定世代の開始予定の順番を変更する例を,次の図に示します。

図2‒30 計画一時変更で実行予定世代の開始予定の順番を変更する例

[図データ]

この例では,待ち合わせ対象ユニットのネストジョブネット1を管理するルートジョブネットA,および待ち合わせ条件付きユニットのジョブ1を管理するルートジョブネットBが,7/1に2回実行するようにスケジュールされています。7/1の1番目に実行されるルートジョブネットBの実行予定世代@A103を計画一時変更で実行中止すると,@A103が削除され,7/1の1番目に実行される世代は@A104になります。そのため,ジョブ1の@A104は,ネストジョブネット1の@A101を待ち合わせます。

48時間制スケジュールを採用しているとき

48時間制スケジュールを採用しているときは,48時間制スケジュールでの実行日に従って待ち合わせる世代が決定します。

48時間制スケジュールを採用している例を,次の図に示します。

図2‒31 48時間制スケジュールを採用している例

[図データ]

この例では,ルートジョブネットAおよびルートジョブネットBのスケジューラーサービスに対して,48時間制スケジュールを採用しています。待ち合わせ対象ユニットのネストジョブネット1を管理するルートジョブネットAのスケジュールルールは,毎日10:00に実行するように定義しています。また,待ち合わせ条件付きユニットのジョブ1を管理するルートジョブネットBのスケジュールルールは,7/1の38:00に実行するように定義しています。この場合,7/1の38:00(暦日で7/2の14:00)に実行されるジョブ1の実行予定世代@A103は,7/1の1番目に実行される世代になります。そのため,ジョブ1の@A103の世代は,ネストジョブネット1の7/1の1番目に実行される世代である@A101を待ち合わせます。

注意事項
  • 基準時刻は,待ち合わせ条件付きユニットと待ち合わせ対象ユニットで別々に設定できます。しかし,それぞれのユニットで別々の設定をしていると,待ち合わせる世代の対応が複雑になり運用が困難になります。基準時刻の設定は,待ち合わせ条件付きユニットと待ち合わせ対象ユニットで合わせることを推奨します。

  • UNIXの場合,タイムゾーンは,待ち合わせ条件付きユニットと待ち合わせ対象ユニットで別々に設定できます。しかし,それぞれのユニットで別々の設定をしていると,待ち合わせる世代の対応が複雑になり運用が困難になります。タイムゾーンの設定は,待ち合わせ条件付きユニットと待ち合わせ対象ユニットで合わせることを推奨します。

  • 待ち合わせ対象ユニットの実行終了を安全に待ち合わせるために,待ち合わせ対象ユニットと待ち合わせ条件付きユニットの保存世代数は,少なくとも1日分の世代を保存できるよう設定してください。待ち合わせ対象ユニットの1日分の世代が保存できない場合,待ち合わせ条件付きユニットが実行を開始しないおそれがあります。また,待ち合わせ条件付きユニットの1日分の世代が保存できない場合,待ち合わせ条件付きユニットが意図しない待ち合わせ対象ユニットの世代を待ち合わせるおそれがあります。

(c) 待ち合わせ条件付きユニットまたは待ち合わせ対象ユニットが起動条件を使用する場合

■ 待ち合わせ対象ユニットが起動条件を使用する場合

待ち合わせ対象ユニットに指定した起動条件付きジョブネットが実行を開始すると,監視世代と実行世代の両方が生成されます。このとき,待ち合わせ条件付きユニットの実行予定世代は,待ち合わせ対象ユニットの監視世代と実行世代の両方が実行終了するのを待ち合わせます。

待ち合わせ条件付きユニットの実行予定世代は,次の条件を満たす待ち合わせ対象ユニットの世代の実行終了を待ち合わせます。

監視世代
  • 実行日が同じ

  • 開始予定時刻順に監視世代を並べた場合に,開始予定の順番が等しい

実行世代
  • 監視世代とともに生成されるすべての実行世代

待ち合わせ対象ユニットが起動条件付きジョブネットの例を,次の図に示します。

図2‒32 待ち合わせ対象ユニットが起動条件付きジョブネットの例

[図データ]

この例では,待ち合わせ対象ユニットとして起動条件付きジョブネットであるルートジョブネットAが定義されています。ルートジョブネットAの世代@A101と@A102は,それぞれ起動条件を使用する世代です。

ルートジョブネットAおよびルートジョブネットBが7/1に2回実行するようにスケジュールして実行登録すると,7/1のルートジョブネットAの実行予定として,実行IDが@A101の監視世代と@A103の実行世代,および@A102の監視世代と@A107の実行世代が生成されます。

@A101の監視世代が監視中の間に起動条件が成立し,実行世代@A103が実行を開始すると,実行世代@A104が生成されます。そのあと再度起動条件が成立すると,実行世代@A104が実行を開始し,実行世代@A105が生成されます。一方,7/1のルートジョブネットBでは,実行予定として実行IDが@A106および@A110の世代が生成されます。ジョブ1の世代@A106は,実行日が同じで,かつ開始予定の順番が等しいルートジョブネットAの監視世代および実行世代を待ち合わせます。そのため,ジョブ1の世代@A106は,ルートジョブネットAの監視世代@A101および実行世代@A103〜@A105がすべて実行終了するのを待ち合わせます。

同様に,ジョブ1で2番目に実行される世代@A110は,ルートジョブネットAの監視世代@A102および実行世代@A107〜@A109がすべて実行終了するのを待ち合わせます。

注意事項
  • 起動条件付きジョブネットを待ち合わせ対象ユニットとして指定する場合,起動条件の有効範囲(回数または時間)には,明示的な数値を指定してください。起動条件の有効範囲が,回数・時間ともに無制限の場合,待ち合わせ条件付きユニットは待ち合わせを開始したときに異常終了します。これは,監視世代が実行終了しないで,待ち合わせ条件付きユニットが待ち続けてしまうのを防ぐためです。

  • 起動条件付きジョブネットを待ち合わせ対象ユニットとして指定する場合,生成される実行世代の数を考慮して保存世代数を設定し,待ち合わせ中に保存世代数超過によって世代が削除されないようにしてください。詳細については,「(5)(c) 待ち合わせ対象ユニットに起動条件を使用する場合の,待ち合わせ条件の設定」を参照してください。

  • 起動条件付きジョブネットを待ち合わせ対象ユニットとして指定する場合,起動条件を使用する世代と使用しない世代が混在しないようにしてください。例えば,起動条件付きジョブネットに複数のスケジュールルールを定義する場合は,すべてのスケジュールルールで起動条件を使用するか使用しないかを統一するようにしてください。起動条件を使用する世代と使用しない世代が混在していると,待ち合わせ条件が正しく動作しません。

■ 待ち合わせ条件付きユニットが起動条件を使用する場合

起動条件付きジョブネットが実行を開始すると,監視世代と実行世代の両方が生成されます。この場合,待ち合わせ条件付きユニットの監視世代が,待ち合わせ対象ユニットの実行終了を待ち合わせます。

待ち合わせ条件付きユニットの監視世代は,次の条件を満たす待ち合わせ対象ユニットの世代の実行終了を待ち合わせます。なお,待ち合わせ条件付きユニットの実行世代は,待ち合わせを行いません。実行世代は,起動条件が成立したときに実行を開始します。

  • 実行日が同じ

  • 開始予定時刻順に世代を並べた順番が,待ち合わせ条件付きユニットの監視世代を開始予定時刻順に並べた順番と等しい

待ち合わせ条件付きユニットが起動条件付きジョブネットの例を,次の図に示します。

図2‒33 待ち合わせ条件付きユニットが起動条件付きジョブネットの例

[図データ]

この例では,待ち合わせ条件付きユニットのルートジョブネットBが,起動条件付きジョブネットとして定義されています。

ルートジョブネットAおよびルートジョブネットBが7/1に2回実行するようにスケジュールして実行登録すると,7/1のルートジョブネットAの実行予定として,実行IDが@A101と@A102の世代が生成されます。一方,7/1のルートジョブネットBの実行予定として,実行IDが@A103の監視世代と@A105の実行世代,および@A104の監視世代と@A108の実行世代が生成されます。監視世代@A103は,実行日が同じで,かつ開始予定の順番が等しいネストジョブネット1の実行予定世代@A101の実行終了を待ち合わせます。

世代@A101が実行終了することで,待ち合わせ条件が成立します。待ち合わせ条件が成立すると,監視世代@A103が起動条件の監視を開始します。そのあと,起動条件が成立して実行世代@A105が実行を開始すると,実行世代@A106が生成されます。再度起動条件が成立すると,実行世代@A106が実行を開始し,実行世代@A107が生成されます。

同様に,ルートジョブネットBの監視世代@A104は,ネストジョブネット1で2番目に実行される世代@A102の実行終了を待ち合わせます。

(d) 待ち合わせ対象ユニットにプランニンググループを指定した場合

待ち合わせ対象ユニットにプランニンググループを指定した場合,待ち合わせ条件付きユニットが待ち合わせるユニットは,プランニンググループ配下で実行しているルートジョブネットになります。プランニンググループ配下で実行しているルートジョブネットが切り替わると,待ち合わせ条件付きユニットが待ち合わせるユニットも自動で切り替わります。

待ち合わせ対象ユニットにプランニンググループを指定した場合の例を,次の図に示します。

図2‒34 待ち合わせ対象ユニットにプランニンググループを指定した場合の例

[図データ]

この例では,待ち合わせ対象ユニットのプランニンググループPに,6/1〜6/30で実行するルートジョブネットP1と,7/1〜7/31で実行するルートジョブネットP2を定義しています。6/1〜6/30では,ジョブ1はルートジョブネットP1を待ち合わせます。7/1になってプランニンググループ配下で実行するルートジョブネットがルートジョブネットP2に切り替わると,ジョブ1はルートジョブネットP2を待ち合わせます。

(3) 待ち合わせ条件付きユニットに実行予定がない場合の動作

待ち合わせ条件付きユニットに実行予定がない場合,デフォルトの設定では待ち合わせは行われません。後続のユニットは,待ち合わせ対象ユニットの終了を待たずに実行されます。

待ち合わせ条件付きユニットに実行予定がない場合の動作を次の図に示します。

図2‒35 待ち合わせ条件付きユニットに実行予定がない場合の動作

[図データ]

この動作は,環境設定パラメーターPREWAITNOSCHUNITSで変更できます。環境設定パラメーターPREWAITNOSCHUNITSに「yes」を指定すると,待ち合わせ条件付きユニットに実行予定がない場合でも待ち合わせをします。環境設定パラメーターPREWAITNOSCHUNITSについては,マニュアル「JP1/Automatic Job Management System 3 構築ガイド 20.4.2(122) PREWAITNOSCHUNITS」を参照してください。

環境設定パラメーターPREWAITNOSCHUNITSに「yes」を指定した場合の動作を,次の図に示します。

図2‒36 環境設定パラメーターPREWAITNOSCHUNITSに「yes」を指定した場合の動作

[図データ]

待ち合わせ条件付きユニットの上位ジョブネットに実行予定がない場合は,環境設定パラメーターPREWAITNOSCHUNITSに指定した値にかかわらず,待ち合わせは行われません。実行予定がない上位ジョブネットは,先行のジョブやジョブネットの実行終了など,上位ジョブネット自身の実行条件を満たすと「計画未実行」状態となり,その配下のユニットは,待ち合わせ条件付きユニットを含めてすべて「計画未実行」状態となります。

待ち合わせ条件付きユニットの上位ジョブネットに実行予定がない場合の動作を,次の図に示します。

図2‒37 待ち合わせ条件付きユニットの上位ジョブネットに実行予定がない場合の動作

[図データ]

また,環境設定パラメーターPREWAITNOSCHUNITSに「yes」を指定した場合,待ち合わせ条件付きユニットに実行予定がないときでも待ち合わせ条件は有効になり,待ち合わせ状態に対応したメッセージやJP1イベントが出力されます。待ち合わせ条件が成立すると,実行予定のない待ち合わせ条件付きユニットは実行されないため,開始メッセージ,終了メッセージおよびJP1イベントは出力されません。ただし,待ち合わせでエラーが発生した場合は,待ち合わせ条件付きユニットが「異常検出終了」状態に遷移し,メッセージやJP1イベントが出力されます。

環境設定パラメーターPREWAITNOSCHUNITSに「yes」を指定した場合のメッセージやJP1イベントの動作を,次の図に示します。

図2‒38 環境設定パラメーターPREWAITNOSCHUNITSに「yes」を指定した場合のメッセージやJP1イベントの動作

[図データ]

補足事項

待ち合わせ条件付きユニットに実行予定がない場合,デフォルトの設定では,待ち合わせ条件付きユニットの待ち合わせ条件の処理も,ユニットの処理と合わせて実行しないで終了します。

図2‒39 環境設定パラメーターPREWAITNOSCHUNITSがデフォルトの場合の処理の流れ

[図データ]

環境設定パラメーターPREWAITNOSCHUNITSに「yes」を指定すると,待ち合わせ条件付きユニットの処理を実行しない範囲から待ち合わせ条件を出すことで,待ち合わせをします。なお,環境設定パラメーターPREWAITNOSCHUNITSに「yes」を指定していても,待ち合わせ条件付きユニットの上位ジョブネットに実行予定がない場合,上位ジョブネットの処理をしない範囲に待ち合わせ条件付きユニットの待ち合わせ条件も含まれるため,待ち合わせは行われません。

図2‒40 環境設定パラメーターPREWAITNOSCHUNITSに「yes」を指定した場合の処理の流れ

[図データ]

注意事項

環境設定パラメーターPREWAITNOSCHUNITSに「yes」を指定していても,次の場合は,待ち合わせは行われません。後続のユニットは,待ち合わせ対象ユニットの終了を待たずに実行されます。

  • 実行予定のない待ち合わせ条件付きユニットが従属ユニットで,その判定ジョブが「正常終了-偽」状態になった場合

  • 実行予定のない待ち合わせ条件付きユニットがORジョブの先行のイベントジョブで,別の先行のイベントジョブが終了した場合

(4) 待ち合わせ条件付きユニットと待ち合わせ対象ユニットの状態遷移

(a) 待ち合わせ条件付きユニットまたは待ち合わせ対象ユニットが起動条件を使用しない場合の状態遷移

■ 待ち合わせ条件付きユニットに実行予定がある場合の状態遷移

待ち合わせが成立するときのユニットの状態遷移を,次の図に示します。

図2‒41 待ち合わせ条件付きユニットに実行予定があるときの待ち合わせ条件成立時のユニットの状態遷移(起動条件を使用しない場合)

[図データ]

待ち合わせ条件付きユニットは,待ち合わせ対象ユニットが「実行中」状態の間,「開始時刻待ち」または「先行終了待ち」状態で待ち合わせ条件の成立を待ちます。どちらの状態になるかは,待ち合わせ条件付きユニットのユニット種別によって異なります。

待ち合わせ条件付きユニットのユニット種別と待ち合わせ条件成立前の状態を,次の表に示します。待ち合わせ条件を設定できるユニット種別については,「(1)(a) 待ち合わせ条件付きユニットと待ち合わせ対象ユニット」を参照してください。

表2‒11 待ち合わせ条件付きユニットのユニット種別と待ち合わせ条件成立前の状態(待ち合わせ条件付きユニットに実行予定がある場合)

項番

待ち合わせ条件付きユニットのユニット種別

待ち合わせ条件成立前の状態

1

ルートジョブネット

開始時刻待ち

2

ネストジョブネット

先行終了待ち

3

  • 標準ジョブ

  • ジョブネットコネクタ

  • イベントジョブ

  • アクションジョブ

  • カスタムジョブ

  • 引き継ぎ情報設定ジョブ

  • HTTP接続ジョブ

先行終了待ち

待ち合わせ条件付きユニットが「開始時刻待ち」または「先行終了待ち」状態のときに,待ち合わせ対象ユニットが次の状態に遷移すると,待ち合わせ条件が成立します。

  • 正常終了

  • 警告検出終了

  • 計画未実行

待ち合わせ条件が成立すると,待ち合わせ条件付きユニットが「実行中」状態に遷移し,実行を開始します。

なお,待ち合わせ対象ユニットが異常終了すると,待ち合わせ条件付きユニットは「開始時刻待ち」または「先行終了待ち」状態のまま,待ち合わせ条件の成立を待ち続けます。この場合,待ち合わせ対象ユニットの異常の原因を取り除いたあと,待ち合わせ対象ユニットを再実行してください。

■ 待ち合わせ条件付きユニットに実行予定がない場合の状態遷移

環境設定パラメーターPREWAITNOSCHUNITSで「yes」を指定していると,待ち合わせ条件付きユニットに実行予定がない場合でも待ち合わせをします。環境設定パラメーターPREWAITNOSCHUNITSについては,マニュアル「JP1/Automatic Job Management System 3 構築ガイド 20.4.2(122) PREWAITNOSCHUNITS」を参照してください。

待ち合わせ条件が成立するときのユニットの状態遷移を,次の図に示します。

図2‒42 待ち合わせ条件付きユニットに実行予定がないときの待ち合わせ条件成立時のユニットの状態遷移(起動条件を使用しない場合)

[図データ]

環境設定パラメーターPREWAITNOSCHUNITSで「yes」を指定していると,実行予定がない待ち合わせ条件付きユニットは,待ち合わせ対象ユニットが「実行中」状態の間,「未計画」状態で待ち合わせ条件の成立を待ちます。

待ち合わせ条件付きユニットのユニット種別と待ち合わせ条件成立前の状態を,次の表に示します。待ち合わせ条件を設定できるユニット種別については,「(1)(a) 待ち合わせ条件付きユニットと待ち合わせ対象ユニット」を参照してください。

表2‒12 待ち合わせ条件付きユニットのユニット種別と待ち合わせ条件成立前の状態(実行予定がない場合)

項番

待ち合わせ条件付きユニットのユニット種別

待ち合わせ条件成立前の状態

1

ネストジョブネット

未計画

2

  • 標準ジョブ

  • イベントジョブ

  • アクションジョブ

  • カスタムジョブ

  • 引き継ぎ情報設定ジョブ

  • HTTP接続ジョブ

未計画

待ち合わせ条件付きユニットが「未計画」状態のときに,待ち合わせ対象ユニットが次の状態に遷移すると,待ち合わせ条件が成立します。

  • 正常終了

  • 警告検出終了

  • 計画未実行

待ち合わせ条件が成立すると,待ち合わせ条件付きユニットが「計画未実行」状態に遷移し,後続ジョブの実行が開始されます。

なお,待ち合わせ対象ユニットが異常終了すると,待ち合わせ条件付きユニットは「未計画」状態のまま,待ち合わせ条件の成立を待ち続けます。この場合,待ち合わせ対象ユニットの異常の原因を取り除いたあと,待ち合わせ対象ユニットを再実行してください。

(b) 待ち合わせ条件付きユニットまたは待ち合わせ対象ユニットが起動条件を使用する場合の状態遷移

■ 待ち合わせ対象ユニットが起動条件を使用する場合の状態遷移

待ち合わせ条件が成立するときのユニットの状態遷移を,次の図に示します。

図2‒43 待ち合わせ条件成立時のユニットの状態遷移(待ち合わせ対象ユニットが起動条件を使用する場合)

[図データ]

待ち合わせ条件付きユニットに実行予定がある場合,待ち合わせ対象ユニット(起動条件付きジョブネット)の監視世代が「監視中」状態,または実行世代が「実行中」状態の間,待ち合わせ条件付きユニットは「開始時刻待ち」または「先行終了待ち」状態で待ち合わせ条件の成立を待ちます。どちらの状態になるかは,待ち合わせ条件付きユニットのユニット種別によって異なります。待ち合わせ条件成立前の待ち合わせ条件付きユニットの状態については,表2-11を参照してください。

起動条件付きジョブネットが実行終了して待ち合わせ条件が成立すると,実行予定がある待ち合わせ条件付きユニットは「実行中」状態に遷移して実行を開始します。

待ち合わせ条件付きユニットに実行予定がない場合は,環境設定パラメーターPREWAITNOSCHUNITSで「yes」を指定していると,待ち合わせ対象ユニット(起動条件付きジョブネット)の監視世代が「監視中」状態,または実行世代が「実行中」状態の間,待ち合わせ条件付きユニットは「未計画」状態で待ち合わせ条件の成立を待ちます。環境設定パラメーターPREWAITNOSCHUNITSについては,マニュアル「JP1/Automatic Job Management System 3 構築ガイド 20.4.2(122) PREWAITNOSCHUNITS」を参照してください。また,待ち合わせ条件成立前の待ち合わせ条件付きユニットの状態については,表2-12を参照してください。

起動条件付きジョブネットが実行終了して待ち合わせ条件が成立すると,実行予定がない待ち合わせ条件付きユニットは「計画未実行」状態に遷移し,続けて後続ユニットが実行されます。

なお,起動条件付きジョブネットの実行終了とする監視世代および実行世代の状態は,待ち合わせ条件の設定で変更できます。詳細については,「(5)(c) 待ち合わせ対象ユニットに起動条件を使用する場合の,待ち合わせ条件の設定」を参照してください。

■ 待ち合わせ条件付きユニットが起動条件を使用する場合の状態遷移

待ち合わせ条件が成立するときのユニットの状態遷移を,次の図に示します。

図2‒44 待ち合わせ条件成立時のユニットの状態遷移(待ち合わせ条件付きユニットが起動条件を使用する場合)

[図データ]

待ち合わせ対象ユニットが「実行中」状態の間,待ち合わせ条件付きユニット(起動条件付きジョブネット)の監視世代は,「開始時刻待ち」状態で待ち合わせ条件の成立を待ちます。このとき,起動条件で監視するイベントが発生しても,起動条件の監視が開始されていないため,起動条件は成立しません。そのため,実行世代は実行を開始しません。

注意事項

起動条件付きジョブネットが待ち合わせ対象ユニットの実行終了を待ち合わせている間,イベントは監視されません。そのため,待ち合わせ対象ユニットが遅延すると,その分イベントの監視開始も遅延します。起動条件付きジョブネットへの待ち合わせ条件の設定は,イベントの監視開始が遅延しても問題ない使い方に限定してください。

イベントの監視開始が遅延しても問題ない使い方の例
  • ファイル監視ジョブを使って監視開始前にすでにファイルが存在しても起動条件を成立させる

    この使い方は,監視開始と同時に起動条件付きジョブネットが実行を開始するため,待ち合わせ対象ユニットが遅延して監視開始が遅延しても問題ありません。

イベントの監視開始が遅延すると問題のある使い方の例
  • 実行間隔制御ジョブを使って特定の時刻から一定間隔で繰り返しジョブネットを起動させる

    この使い方は,繰り返しの開始時刻が待ち合わせ対象ユニットの実行終了のタイミングに依存するため,繰り返しの開始および終了が,期待した時刻より遅延するおそれがあります。

(c) 待ち合わせ条件が成立しても待ち合わせ条件付きユニットが実行されない場合の状態遷移

待ち合わせ条件付きユニットや待ち合わせ対象ユニットを次のように定義していたり操作したりする場合,待ち合わせ条件が成立しても待ち合わせ条件付きユニットが実行されないことがあります。

  • 待ち合わせ条件付きユニットに関連線で接続された先行ユニットがある場合

  • 待ち合わせ条件付きユニットに保留属性を設定している場合

  • 待ち合わせ条件付きユニットを同時に複数回実行する場合

  • 待ち合わせ条件付きユニットまたは待ち合わせ対象ユニットを再実行する場合

このような場合での状態遷移の例について説明します。

■ 待ち合わせ条件付きユニットに関連線で接続された先行ユニットがある場合

待ち合わせ条件付きユニットに関連線で接続された先行ユニットがある場合,待ち合わせ条件付きユニットは,先行ユニットが実行終了してから待ち合わせ条件が成立しているかどうかをチェックします。先行ユニットが実行終了しないうちに待ち合わせ条件が成立しても,待ち合わせ条件の成立チェックはされないため,待ち合わせ条件付きユニットは実行を開始しません。

関連線で接続された先行ユニットがある場合の例を,次の図に示します。

図2‒45 関連線で接続された先行ユニットがある場合の例

[図データ]

[図データ]

この例では,待ち合わせ条件付きユニットのジョブ2に,待ち合わせ対象ユニットとしてネストジョブネット1が定義されています。また,先行ユニットとしてジョブ1が定義されています。

例1では,ジョブ1が実行終了してからネストジョブネット1が実行終了しています。この場合,ジョブ1が実行終了した時点でジョブ2は待ち合わせ条件の成立チェックを開始します。そのため,ネストジョブネット1が実行終了して待ち合わせ条件が成立すると,ジョブ2は実行を開始します。

例2では,ネストジョブネット1が実行終了してからジョブ1が実行終了しています。この場合,ネストジョブネット1が正常終了しても,ジョブ2は待ち合わせ条件の成立チェックを開始していないため,ジョブ2は実行されません。ジョブ1が正常終了すると,ジョブ2は待ち合わせ条件の成立チェックを開始します。待ち合わせ条件の成立チェック開始時点でネストジョブネット1が正常終了していれば,待ち合わせ条件は成立し,ジョブ2はすぐに実行を開始します。

■ 待ち合わせ条件付きユニットに保留属性を設定している場合

待ち合わせ条件付きユニットに保留属性を設定している場合,待ち合わせ条件が成立しても,待ち合わせ条件付きユニットの実行は開始されないで保留されます。

保留属性を設定する場合の例を,次の図に示します。

図2‒46 保留属性を設定する場合の例

[図データ]

この例では,待ち合わせ条件付きユニットのジョブ1が「先行終了待ち」状態の間に,ジョブ1に保留属性を設定しています。この場合,待ち合わせ条件が成立しても,ジョブ1は実行を開始しないで「保留中」状態に遷移します。保留設定が解除されると,ジョブ1は実行を開始します。

■ 待ち合わせ条件付きユニットを重複して複数回実行する場合

待ち合わせ条件付きユニットを重複して複数回実行する場合,ルートジョブネットの多重起動やスケジューリング方式の設定に従って,待ち合わせ条件が成立しても実行中の世代の終了を待ってから実行されたり,ルートジョブネットの次回実行予定が「繰り越し未実行」となって実行されなかったりすることがあります。

多重起動およびスケジューリング方式の違いによる状態遷移の例を,次の図に示します。

図2‒47 多重起動およびスケジューリング方式の違いの例

[図データ]

[図データ]

例1では,待ち合わせ条件付きユニットのルートジョブネットBの詳細定義に,多重起動として「不可能」を,スケジューリング方式として「多重スケジュール」を設定しています。ルートジョブネットBの世代1が「実行中」状態のときにルートジョブネットBを即時実行すると,世代2が生成されて,「開始時刻待ち」状態でルートジョブネットA/ジョブ1の世代2の実行終了を待ち合わせます。ジョブ1の世代2が実行終了して待ち合わせ条件が成立すると,多重起動できないため,ルートジョブネットBの世代2は「開始時刻待ち」状態のままルートジョブネットBの世代1の実行終了を待ちます。そのあと,ルートジョブネットBの世代1が実行終了すると,ルートジョブネットBの世代2は実行を開始します。

例2では,ルートジョブネットBの詳細定義に,多重起動として「不可能」を,スケジューリング方式として「スケジュールスキップ」を設定しています。ルートジョブネットBの世代1が「実行中」状態のときにルートジョブネットBを即時実行すると,世代2が生成されます。しかし,世代1が実行中のため,世代2はスキップされて,「繰り越し未実行」状態に遷移します。そのあと,ルートジョブネットAのジョブ1の世代2が正常終了しても,ルートジョブネットBの世代2は終了しているので,実行を開始しません。

例3では,ルートジョブネットBの詳細定義に,多重起動として「可能」を,スケジューリング方式として「多重スケジュール」を設定しています。ルートジョブネットBの世代1が「実行中」状態のときにルートジョブネットBを即時実行すると,世代2が生成されて,「開始時刻待ち」状態でルートジョブネットA/ジョブ1の世代2の実行終了を待ち合わせます。ジョブ1の世代2が実行終了して待ち合わせ条件が成立すると,ルートジョブネットBの世代2は実行を開始します。

注意事項

ルートジョブネットに待ち合わせ条件を設定する場合は,次回実行予定の開始予定時刻になる前に,前回の実行予定の待ち合わせ条件が成立して,実行を開始するように運用してください。多重起動を設定して多重スケジュールを指定していても,前回の実行予定が実行を開始していない場合は,次回実行予定は待ち合わせ条件が成立しても実行を開始しません。

■ 待ち合わせ条件付きユニットまたは待ち合わせ対象ユニットを再実行する場合

待ち合わせ条件付きユニットまたは待ち合わせ対象ユニットを再実行する場合の,ユニットの状態遷移について説明します。

待ち合わせ条件付きユニットを再実行する場合

一度待ち合わせ条件が成立した待ち合わせ条件付きユニットを再実行しても,待ち合わせ条件は未成立には戻りません。そのため,待ち合わせ条件が成立して実行終了した待ち合わせ条件付きユニットをそのまま再実行すると,待ち合わせ条件付きユニットは待ち合わせを開始しますが,待ち合わせ条件はすでに成立しているため,すぐに実行を開始します。

待ち合わせ条件付きユニットを再実行する場合の例を,次の図に示します。

図2‒48 待ち合わせ条件付きユニットを再実行する場合の例

[図データ]

この例では,待ち合わせ対象ユニットのジョブ1が正常終了して待ち合わせ条件が成立したあと,ルートジョブネットBを再実行しています。ルートジョブネットBを再実行しても,待ち合わせ条件はすでに成立しているため,ルートジョブネットBはジョブ1の実行終了を待ち合わせないで実行を開始します。

補足事項

環境設定パラメーターPREWAITNOSCHUNITSで「yes」を指定していて,待ち合わせ条件付きユニットに実行予定がない場合,待ち合わせ条件付きユニットをそのまま再実行すると計画未実行状態となり,後続ユニットが実行されます。

待ち合わせ対象ユニットを再実行する場合

待ち合わせ対象ユニットを再実行すると,待ち合わせ対象ユニットだけが再実行され,待ち合わせ条件付きユニットは再実行されません。

待ち合わせ対象ユニットを再実行する場合の例を,次の図に示します。

図2‒49 待ち合わせ対象ユニットを再実行する場合の例

[図データ]

この例では,待ち合わせ対象ユニットのジョブ1および待ち合わせ条件付きユニットのルートジョブネットBが正常終了している場合に,ジョブ1を再実行しています。ジョブ1は実行を開始しますが,ルートジョブネットBは正常終了したまま,再実行しません。

注意事項

待ち合わせ対象ユニットに起動条件を使用する場合,監視世代は再実行しないでください。監視世代を再実行しても再監視はしないため,意図せず待ち合わせ条件が成立してしまうことがあります。監視世代が「監視打ち切り終了」状態や「監視未起動終了」状態など待ち合わせ条件が成立しない状態で終了した場合は,待ち合わせ条件を無効化することで,待ち合わせ条件付きユニットを実行開始させることができます。待ち合わせ条件の設定の一時的な変更については,マニュアル「JP1/Automatic Job Management System 3 導入ガイド 4.5.15 ジョブネットやジョブの待ち合わせ条件の設定を一時変更する」を参照してください。

(d) 待ち合わせ対象ユニットの後続ユニットを再実行した場合の待ち合わせ条件

待ち合わせ対象ユニットの後続ユニットを再実行すると,待ち合わせ対象ユニットの状態が変化することがあります。この場合に,待ち合わせ条件を成立させるかどうか,環境設定パラメーターPREWAITRERUNSTATUSで設定できます。JP1/AJS3を新規インストールした状態では,待ち合わせ条件は成立しないように設定されます。

環境設定パラメーターPREWAITRERUNSTATUSの詳細については,マニュアル「JP1/Automatic Job Management System 3 構築ガイド 20.4.2(110) PREWAITRERUNSTATUS」を参照してください。

待ち合わせ条件が成立するように設定する

環境設定パラメーターPREWAITRERUNSTATUSで「no」を指定していると,後続ユニットの再実行によって待ち合わせ対象ユニットの状態が変化すると,待ち合わせ条件が成立し,待ち合わせ条件付きユニットが実行を開始します。

環境設定パラメーターPREWAITRERUNSTATUSで「no」を指定している場合に,待ち合わせ対象ユニットの後続ユニットを再実行する例を次の図に示します。

図2‒50 待ち合わせ対象ユニットの後続ユニットを再実行する例(待ち合わせ条件が成立する設定)

[図データ]

この例では,待ち合わせ対象ユニットであるジョブ2,およびその後続ユニットのジョブ3が「未実行終了」状態の場合に,ジョブ3を再実行しています。ジョブ3を再実行すると,ジョブ2は「未実行終了」状態から「計画未実行」状態に遷移します。

環境設定パラメーターPREWAITRERUNSTATUSで「no」を指定していると,待ち合わせ状態は「完了」となり,待ち合わせ条件が成立します。そして,待ち合わせ条件付きユニットのルートジョブネットAが実行を開始します。

環境設定パラメーターPREWAITRERUNSTATUSで「no」を指定しているときは,再実行による待ち合わせ対象ユニットの状態の変化に注意してください。待ち合わせ対象ユニットの後続ユニットを再実行する場合は,状態が変化するユニットの中に待ち合わせ対象ユニットがないか検索するなどして,影響範囲を明確にしてから再実行してください。再実行の詳細については,マニュアル「JP1/Automatic Job Management System 3 導入ガイド 4.5.11 実行が終了したジョブネットやジョブを再実行する」を参照してください。待ち合わせ条件の検索方法については,マニュアル「JP1/Automatic Job Management System 3 操作ガイド 10.2 ユニットを検索して表示する」を参照してください。

待ち合わせ条件が成立しないように設定する

環境設定パラメーターPREWAITRERUNSTATUSで「yes」を指定していると,後続ユニットの再実行によって待ち合わせ対象ユニットの状態が変化しても,待ち合わせ条件は成立しません。したがって,待ち合わせ条件付きユニットの状態は変わりません。

この設定だと,ユニットの再実行によって先行ユニットの状態が変更することで,意図しない待ち合わせ条件の成立を防ぐことができます。

環境設定パラメーターPREWAITRERUNSTATUSで「yes」を指定している場合に,待ち合わせ対象ユニットの後続ユニットを再実行する例を次の図に示します。

図2‒51 待ち合わせ対象ユニットの後続ユニットを再実行する例(待ち合わせ条件が成立しない設定)

[図データ]

ユニットの定義は,待ち合わせ条件が成立する設定の例と同じです。ジョブ3を再実行すると,ジョブ2は「未実行終了」状態から「計画未実行」状態に遷移します。

しかし,環境設定パラメーターPREWAITRERUNSTATUSで「yes」を指定していると,待ち合わせ状態は「未完了(再実行)」となり,待ち合わせ条件は成立しません。そのため,待ち合わせ条件付きユニットのルートジョブネットAの状態は変わりません。

なお,待ち合わせ対象ユニットであるジョブ2を再実行してジョブ2が実行終了すると,待ち合わせ条件が成立し,ルートジョブネットAが実行を開始します。

待ち合わせ対象ユニットがジョブネットで,配下のユニットを個別に再実行する場合,ジョブネットが終了状態になると,待ち合わせが完了します。必要に応じて保留設定やジョブ状態を変更して,待ち合わせが成立しない状態にしてください。

(5) 待ち合わせ条件付きユニットの動作の設定

待ち合わせ条件には,待ち合わせ対象ユニット名以外に,次の項目を設定できます。

待ち合わせ条件付きユニットの待ち合わせ方法,および待ち合わせる世代がない場合の待ち合わせ条件付きユニットの動作について,次に説明します。

(a) 待ち合わせ対象ユニットが複数ある場合の待ち合わせ方法

一つの待ち合わせ条件付きユニットに対して,待ち合わせ対象ユニットを最大で32個指定できます。待ち合わせ対象ユニットを複数指定した場合,待ち合わせ方法として,すべての待ち合わせ対象ユニットの実行終了を待ち合わせるのか,どれか一つの待ち合わせ対象ユニットの実行終了を待ち合わせるのかを設定できます。

待ち合わせ方法は次の二つから選択します。

  • AND

    指定した待ち合わせ対象ユニットがすべて実行終了すれば,待ち合わせ条件が成立します。

  • OR

    指定した待ち合わせ対象ユニットのうちどれか一つが実行終了すれば,待ち合わせ条件が成立します。

ANDとORの動作の違いを,次の図に示します。

図2‒52 ANDとORの動作の違い

[図データ]

この例では,待ち合わせ条件付きユニットのジョブ1に,待ち合わせ対象ユニットとしてネストジョブネット1およびネストジョブネット2を指定しています。

例1の待ち合わせ方法が「AND」の場合,ネストジョブネット1とネストジョブネット2の両方が実行終了すると,待ち合わせ条件が成立し,ジョブ1が実行を開始します。

例2の待ち合わせ方法が「OR」の場合,ネストジョブネット1が実行終了した時点で待ち合わせ条件が成立し,ジョブ1が実行を開始します。

注意事項

一つの待ち合わせ条件付きユニットに対する待ち合わせ対象ユニットの数が多いと,JP1/AJS3の処理速度に影響するおそれがあります。一つの待ち合わせ条件付きユニットに対する待ち合わせ対象ユニット数は,できるだけ少なくなるように設計してください。

待ち合わせ対象ユニットの数を少なくする例を,次の図に示します。

図2‒53 待ち合わせ対象ユニットの数を少なくする例

[図データ]

待ち合わせ対象ユニットが多い場合の例では,ジョブ1,ジョブ2,およびジョブ3を,待ち合わせ条件付きユニットのジョブ4の待ち合わせ対象ユニットとして指定しています。この例で待ち合わせ対象ユニットを減らすためには,待ち合わせ対象ユニットが少ない場合の例のように,ジョブ1,ジョブ2,およびジョブ3の後続ユニットとして何もしないジョブのジョブ0を定義して,それぞれを関連線で接続します。ジョブ0をジョブ4の待ち合わせ対象ユニットとして指定することで,待ち合わせ対象ユニットを減らすことができます。ただし,この図のように何もしないジョブを定義すると,ジョブ管理がしづらくなります。本来存在しないユニットを定義して待ち合わせ条件を指定するのは,性能が確保できない場合だけにしてください。

補足事項

待ち合わせ方法が「AND」の場合に,待ち合わせ対象ユニットの一部が実行終了している状態でスケジューラーサービスをホットスタートで再起動すると,再起動後でも,再起動前の待ち合わせ条件の成立状態が維持されます。そのため,再起動後に実行終了していない待ち合わせ対象ユニットが実行終了すると,待ち合わせ条件は成立します。

例えば図2-52の例1の場合で,ネストジョブネット1が正常終了していてネストジョブネット2が実行中のときにスケジューラーサービスをホットスタートで再起動したとします。この場合,再起動後にネストジョブネット2が実行終了すれば,待ち合わせ条件が成立します。

(b) 待ち合わせ対象ユニットに待ち合わせる世代がない場合の,待ち合わせ条件付きユニットの動作

待ち合わせ条件付きユニットは,「(2) 待ち合わせ条件付きユニットと待ち合わせ対象ユニットの待ち合わせルール」の待ち合わせルールに従って,待ち合わせ対象ユニットの世代の実行終了を待ち合わせます。しかし,待ち合わせ対象ユニットに待ち合わせルールを満たす世代がない場合,待ち合わせ条件付きユニットは,次のどちらかのように動作します。

  • 実行を開始しない

    待ち合わせ対象ユニットに待ち合わせる世代がなくても,「開始時刻待ち」,「先行終了待ち」,または「未計画」状態のまま待ち合わせ条件の成立を待ち続けます。

    注※

    環境設定パラメーターPREWAITNOSCHUNITSで「yes」を指定している場合は,待ち合わせ条件付きユニットが「未計画」状態でも待ち合わせをします。環境設定パラメーターPREWAITNOSCHUNITSについては,マニュアル「JP1/Automatic Job Management System 3 構築ガイド 20.4.2(122) PREWAITNOSCHUNITS」を参照してください。

  • 実行を開始する

    待ち合わせ対象ユニットに待ち合わせる世代がないと,すぐに実行を開始します。複数の待ち合わせ対象ユニットと待ち合わせをする場合,実行終了していないすべての待ち合わせ対象ユニットに待ち合わせる世代がないと,実行を開始します。

なお,この設定は,待ち合わせ条件付きユニットと待ち合わせ対象ユニットが異なるルートジョブネット配下にある場合に有効です。待ち合わせ条件付きユニットと待ち合わせ対象ユニットが同じルートジョブネット配下にある場合,両ユニットは同じ世代で実行されるため,待ち合わせ対象ユニットに待ち合わせルールを満たす世代は必ず存在します。

待ち合わせ対象ユニットに待ち合わせる世代がない場合の設定による動作の違いを,次の図に示します。

図2‒54 待ち合わせ対象ユニットに待ち合わせる世代がない場合の設定による動作の違い

[図データ]

例1では,待ち合わせ対象ユニットに待ち合わせる世代がない場合の設定を,「実行を開始しない」にしています。待ち合わせ条件付きユニットのジョブ1の上位ユニットであるルートジョブネットBを即時実行すると,ジョブ1の世代が生成されます。このとき,待ち合わせ対象ユニットのネストジョブネット1に世代がないため,ジョブ1は「先行終了待ち」状態に遷移して待ち合わせ条件の成立を待ち続けます。ネストジョブネット1の上位ユニットであるルートジョブネットAを即時実行してネストジョブネット1が正常終了すると,待ち合わせ条件が成立して,ジョブ1が実行を開始します。

例2では,待ち合わせ対象ユニットに待ち合わせる世代がない場合の設定を,「実行を開始する」にしています。ルートジョブネットBを即時実行すると,ジョブ1の世代が生成されます。このとき,待ち合わせ対象ユニットのネストジョブネット1に世代がないため,ジョブ1はすぐに実行を開始します。ジョブ1の実行開始後にネストジョブネット1の上位ユニットであるルートジョブネットAを即時実行して,ネストジョブネット1が実行終了しても,ジョブ1は実行を開始しません。

補足事項
  • 待ち合わせ対象ユニットが「未計画」状態でも,待ち合わせ対象ユニットのルートジョブネットに実行予定がある場合,待ち合わせる世代がない場合の設定は有効になりません。この場合,ルートジョブネットを実行すると,待ち合わせ対象ユニットは「計画未実行」状態に遷移します。そのため,待ち合わせ対象ユニットは実行終了したと見なされ,待ち合わせ条件が成立します。

  • 「実行を開始する」を指定していても,待ち合わせ対象ユニットのルートジョブネットが「未登録」状態の場合,待ち合わせ条件付きユニットは実行を開始しません。

(c) 待ち合わせ対象ユニットに起動条件を使用する場合の,待ち合わせ条件の設定

待ち合わせ対象ユニットに起動条件を使用する場合,待ち合わせ条件の設定を変更することで,待ち合わせ対象ユニットの実行終了とする状態を次のように変更できます。

  • 待ち合わせ対象ユニットの監視世代が「監視未起動終了」状態で終了した場合

    監視世代が「監視未起動終了」状態で終了した場合に,待ち合わせ条件が成立するようにできます。

  • 待ち合わせ対象ユニットの実行世代が異常終了した場合

    実行世代が異常終了した場合に,待ち合わせ条件が成立するようにできます。

    なお,実行世代の異常終了状態が「繰り越し未実行」状態の場合には,待ち合わせ条件が成立するようにもできます。

次に,待ち合わせ条件の設定を変更する例を示します。

  • イベントの監視中に起動条件が成立しないで終了する場合

    起動条件の有効範囲に指定した時間内に1回も起動条件が成立しない場合でも,運用上は正常として扱いたいときは,監視世代が「監視未起動終了」状態に遷移しても待ち合わせ条件が成立するようにできます。

  • 実行世代が「異常検出終了」状態や「強制終了」状態になっても運用を継続する場合

    複数回起動条件が成立した場合に,生成された実行世代の一部が異常終了しても,運用上は正常として扱いたいときは,実行世代が異常終了しても待ち合わせ条件が成立するようにできます。

  • 監視世代が「監視中」状態の間に起動条件が大量に成立しても,実行待ちの世代が滞留しないように設定している場合

    起動条件が大量に成立しても実行待ちの実行世代が滞留しないように設定している場合,実行を開始しない実行世代は「繰り越し未実行」状態に遷移します。実行世代が「繰り越し未実行」状態に遷移しても運用上は正常として扱いたいときは,実行世代が「繰り越し未実行」状態に遷移しても待ち合わせ条件が成立するようにできます。

■ 待ち合わせ対象ユニットに起動条件を使用する場合の,監視世代の実行終了の設定

待ち合わせ対象ユニットに起動条件を使用する場合に,監視世代の「監視未起動終了」状態への遷移を,監視世代の実行終了とするように設定できます。

待ち合わせ条件の設定にある「監視未起動終了の場合」の設定で,次のどちらかを選択します。

  • 実行を開始しない(デフォルト)

    監視世代が「監視未起動終了」状態になっても,待ち合わせ条件付きユニットは実行を開始しません。

  • 実行を開始する

    監視世代が「監視未起動終了」状態になったら,待ち合わせ条件付きユニットは実行を開始します。

この設定によって,起動条件付きジョブネットの実行終了とする状態は,次のようになります。

表2‒13 「監視未起動終了の場合」の設定と,起動条件付きジョブネットの実行終了とする状態

実行を開始しない(デフォルト)

実行を開始する

監視世代
  • 監視正常終了

実行世代
  • 正常終了

  • 警告検出終了

監視世代
  • 監視正常終了

  • 監視未起動終了

実行世代
  • 正常終了

  • 警告検出終了

注※

実行世代の実行終了の状態も,待ち合わせ条件付きユニットの動作の設定で変更できます。ここでは,デフォルトの設定であると仮定します。

「監視未起動終了の場合」の設定の違いによる,待ち合わせ条件付きユニットの動作の違いを,次の図に示します。

図2‒55 「監視未起動終了の場合」の設定の違いによる,待ち合わせ条件付きユニットの動作の違い

[図データ]

例1では,ジョブ1に定義した待ち合わせ条件の「監視未起動終了の場合」の設定を,「実行を開始しない」にしています。待ち合わせ対象ユニットのルートジョブネットAの監視世代が「監視中」状態の間,起動条件が1回も成立しないと,監視世代は「監視未起動終了」状態に遷移します。そのため,待ち合わせ条件付きユニットのジョブ1は「先行終了待ち」状態のまま,待ち合わせ条件の成立を待ち続けます。

例2では,ジョブ1に定義した待ち合わせ条件の「監視未起動終了の場合」の設定を,「実行を開始する」にしています。ルートジョブネットAの監視世代が「監視中」状態の間,起動条件が1回も成立しないと,監視世代は「監視未起動終了」状態に遷移します。この場合,待ち合わせ条件が成立して,待ち合わせ条件付きユニットのジョブ1は実行を開始します。

■ 待ち合わせ対象ユニットに起動条件を使用する場合の,実行世代の実行終了の設定

待ち合わせ対象ユニットに起動条件を使用する場合に,実行世代の「繰り越し未実行」状態,または異常終了を含むすべての終了状態への遷移を,実行世代の実行終了とするように設定できます。

待ち合わせ条件の設定にある「実行世代に異常終了がある場合」の設定で,次のどちらかを選択します。

  • 実行を開始しない(デフォルト)

    実行世代が異常終了したら,待ち合わせ条件付きユニットは実行を開始しません。ただし,「繰り越し未実行」状態に限り,実行を開始するかどうかを選択できます。デフォルトでは,「繰り越し未実行」状態では実行を開始しません。

  • 実行を開始する

    実行世代が異常終了しても,待ち合わせ条件付きユニットは実行を開始します。この設定をすると,すべての終了状態が実行終了と見なされます。

この設定によって,起動条件付きジョブネットの実行終了とする状態は,次のようになります。

表2‒14 「実行世代に異常終了がある場合」の設定と,起動条件付きジョブネットの実行終了とする状態

実行を開始しない

実行を開始する

「繰り越し未実行」状態でも開始しない

(デフォルト)

「繰り越し未実行」状態なら開始する

監視世代
  • 監視正常終了

実行世代
  • 正常終了

  • 警告検出終了

監視世代
  • 監視正常終了

実行世代
  • 正常終了

  • 警告検出終了

  • 繰り越し未実行

監視世代
  • 監視正常終了

実行世代
  • すべての終了状態

注※

監視世代の実行終了の状態も,待ち合わせ条件付きユニットの動作の設定で変更できます。ここでは,デフォルトの設定であると仮定します。

「実行世代に異常終了がある場合」の設定の違いによる,待ち合わせ条件付きユニットの動作の違いを,次の図に示します。

図2‒56 「実行世代に異常終了がある場合」の設定の違いによる,待ち合わせ条件付きユニットの動作の違い

[図データ]

例1では,ジョブ1に定義した待ち合わせ条件の「実行世代に異常終了がある場合」の設定を,「実行を開始しない」にしています。実行世代1が正常終了して,実行世代2が異常終了すると,待ち合わせ条件付きユニットのジョブ1は「先行終了待ち」状態のまま,待ち合わせ条件の成立を待ち続けます。

[図データ]

例2では,ジョブ1に定義した待ち合わせ条件の「実行世代に異常終了がある場合」の設定を,「実行を開始しない」にしています。ただし,「繰り越し未実行」状態なら実行を開始する設定にしています。また,ルートジョブネットAは実行世代を滞留させないように設定しています。この場合,実行世代1の実行中に起動条件が成立して実行世代2が「繰り越し未実行」状態に遷移しても,実行世代1が「正常終了」状態に遷移すると待ち合わせ条件が成立します。

[図データ]

例3では,ジョブ1に定義した待ち合わせ条件の「実行世代に異常終了がある場合」の設定を,「実行を開始する」にしています。この場合,実行世代2の実行中に実行世代2を強制終了して「強制終了」状態に遷移させても,待ち合わせ条件が成立します。

注意事項

「実行世代に異常終了がある場合」の設定は,保存されている世代を対象にして判定されます。そのため,例えば保存世代数を超過したことによって実行世代の一部の保存世代が削除されると,残された実行世代から待ち合わせ条件の成立が判定されます。つまり,「実行世代に異常終了がある場合」の設定を「実行を開始しない」としていても,異常終了した実行世代が削除されて残された世代がすべて正常終了であると,待ち合わせ条件が成立します。

待ち合わせ対象ユニットに起動条件付きジョブネットを指定する場合は,待ち合わせ中に実行世代の保存世代が削除されないように,起動条件によって起動する実行世代の数も考慮して保存世代数を見積もってください。

起動条件付きジョブネットの保存世代数については,マニュアル「JP1/Automatic Job Management System 3 導入ガイド 4.2.3(3) 起動条件付きジョブネットの保存世代数管理の例」,および「7.2 保存世代数と性能との関係」を参照して,設定値を検討してください。

(6) 待ち合わせ条件の一時変更

待ち合わせ条件で指定した待ち合わせ対象ユニットとの待ち合わせを,一時的に有効/無効に変更できます。

実行終了した待ち合わせ条件付きユニットの待ち合わせを有効にすると,待ち合わせ状態が「未完了(手動)」になります。このユニットを再実行すると,待ち合わせを再開します。また,待ち合わせ対象ユニットの実行終了を待ち合わせている待ち合わせ条件付きユニットの待ち合わせを無効にすると,待ち合わせ状態が「完了(手動)」になります。待ち合わせ方法が「AND」の場合,すべての待ち合わせ状態を「完了(手動)」にすると,待ち合わせ条件付きユニットは実行を開始します。待ち合わせ方法が「OR」の場合,待ち合わせ対象ユニットのどれか一つの待ち合わせ状態を「完了(手動)」に変更すると,待ち合わせ条件付きユニットは実行を開始します。

待ち合わせ条件の有効化/無効化と待ち合わせ状態の関係を,次の図に示します。

図2‒57 待ち合わせ条件の有効化/無効化と待ち合わせ状態の関係

[図データ]

待ち合わせ対象ユニットが実行中で,待ち合わせ条件付きユニットが「開始時刻待ち」,「先行終了待ち」,または「未計画」状態にあるとき,待ち合わせ状態は「未完了」です。この状態で待ち合わせを無効にすると,待ち合わせ状態は「完了(手動)」になり,待ち合わせ条件付きユニットが実行を開始します。待ち合わせ条件付きユニットの実行終了後,待ち合わせを有効にすると,待ち合わせ状態は「未完了(手動)」に遷移します。この状態で待ち合わせ条件付きユニットを再実行すると,待ち合わせ条件付きユニットは待ち合わせを再開します。そのため,待ち合わせ対象ユニットが正常終了すると,待ち合わせ状態は「完了」に遷移して待ち合わせ条件付きユニットは実行を開始します。

注※

環境設定パラメーターPREWAITNOSCHUNITSで「yes」を指定している場合は,待ち合わせ条件付きユニットが「未計画」状態でも待ち合わせが成立します。環境設定パラメーターPREWAITNOSCHUNITSについては,マニュアル「JP1/Automatic Job Management System 3 構築ガイド 20.4.2(122) PREWAITNOSCHUNITS」を参照してください。

待ち合わせ条件の設定の一時変更は,[待ち合わせ条件の状態一覧]ウィンドウの[操作]−[待ち合わせ]−[待ち合わせ有効化]または[待ち合わせ無効化]を選択することで実行できます。

待ち合わせ条件の設定の一時的な変更については,マニュアル「JP1/Automatic Job Management System 3 導入ガイド 4.5.15 ジョブネットやジョブの待ち合わせ条件の設定を一時変更する」を参照してください。

(7) 待ち合わせ対象ユニットの定義が不正な場合の待ち合わせ条件付きユニットの動作

待ち合わせ条件を使用してユニット間の実行順序を制御する場合に,待ち合わせ対象ユニットに対して次のような操作をすると,待ち合わせ条件で実行順序を制御できなくなります。

このことを,待ち合わせ対象ユニットの定義不正といいます。待ち合わせ対象ユニットの定義不正が発生した場合の待ち合わせ条件付きユニットの動作は,待ち合わせ対象ユニットを実行登録しているかどうかと,待ち合わせ対象ユニットがサスペンド中かどうかで異なります。

待ち合わせ対象ユニットが未登録またはサスペンド中の場合

メッセージKAVS4957-EまたはKAVS4971-Eが出力され,待ち合わせ条件付きユニットの実行は開始されません。

待ち合わせ対象ユニットがサスペンド中である場合,そのユニットが実行終了しても待ち合わせは完了しません。また,異常終了したり,削除されたりしても,待ち合わせ条件付きユニットは異常終了したり,メッセージを出力したりしません。このような場合の待ち合わせ条件付きユニットの動作は,待ち合わせ対象ユニットのサスペンドが解除された時点の,待ち合わせ対象ユニットの状態に依存します。

待ち合わせ対象ユニットが実行登録済みでサスペンド中ではない場合

メッセージKAVS4954-Eが出力され,待ち合わせ条件付きユニットが異常終了します。

待ち合わせ対象ユニットの定義不正の例を,次の図に示します。

図2‒58 待ち合わせ対象ユニットの定義不正の例

[図データ]

この例では,待ち合わせ対象ユニットにリモートジョブネットを指定しているため,定義不正になっています。リモートジョブネットAを未登録のままルートジョブネットBを実行登録すると,待ち合わせ条件付きユニットのジョブ1は「先行終了待ち」状態で待ち合わせ対象ユニットの実行終了を待ち合わせます。このとき,待ち合わせ対象ユニットが未登録であることを知らせるエラーメッセージが出力されます。そのあと,リモートジョブネットAを実行登録すると,リモートジョブネットAには実行予定世代が生成されますが,ジョブ1は待ち合わせ対象ユニットの定義不正のため異常終了します。

なお,待ち合わせ条件の設定後,待ち合わせ対象ユニットのルートジョブネットやプランニンググループを削除・移動したり名称を変更したりした場合も,待ち合わせ対象ユニットの定義不正です。この場合,待ち合わせ条件付きユニットは実行開始後,すぐに異常終了します。

待ち合わせ方法に「OR」を指定している場合,待ち合わせ対象ユニットの定義不正を検知する前にほかの待ち合わせ対象ユニットが実行終了して待ち合わせ条件が成立すると,待ち合わせ条件付きユニットの実行が開始されます。しかし,待ち合わせ対象ユニットの定義不正を先に検知すると,待ち合わせ条件付きユニットは異常終了します。

待ち合わせ対象ユニットの定義不正の防止方法

待ち合わせ対象ユニットの定義不正を防止するために,待ち合わせ対象ユニットのユニット名を変更したり,待ち合わせ対象ユニットを削除したりした場合,待ち合わせ条件付きユニットに設定してある待ち合わせ条件もあわせて変更してください。

また,待ち合わせ対象ユニットの定義不正を事前にチェックすることもできます。チェック方法には,次の二つがあります。

  • 定義内容の事前チェック

    定義内容の事前チェック機能を使用すると,待ち合わせ条件が正しいかチェックできます。定義内容の事前チェックについては,「8. 定義内容の事前チェック」を参照してください。

    なお,次の点はチェックできないため,待ち合わせ条件設定後に動作を確認する必要があります。

    ・待ち合わせ条件による実行順序のループ

    ・プランニンググループ配下のネストジョブネットやジョブを待ち合わせ対象ユニットとした場合の定義不正

    ・起動条件を使用した場合の定義不正

  • [待ち合わせ条件の設定一覧]ウィンドウでのチェック

    JP1/AJS3 - Viewの[待ち合わせ条件の設定一覧]ウィンドウで,待ち合わせ対象ユニットの定義不正をチェックできます。[待ち合わせ条件の設定一覧]ウィンドウでの待ち合わせ対象ユニットの確認方法については,「(8) 待ち合わせ対象ユニットの確認方法」を参照してください。

(8) 待ち合わせ対象ユニットの確認方法

JP1/AJS3 - Viewまたはajsshowコマンドを使って待ち合わせ条件付きユニットを定義・監視する場合,次の方法を使うと,待ち合わせ条件付きユニットと待ち合わせ対象ユニットを一覧で確認できます。

待ち合わせ条件の設定内容を確認する

JP1/AJS3 - Viewの[待ち合わせ条件の設定一覧]ウィンドウは,待ち合わせ条件の設定内容を確認するときに使用します。

[待ち合わせ条件の設定一覧]ウィンドウを,次の図に示します。

図2‒59 [待ち合わせ条件の設定一覧]ウィンドウ

[図データ]

任意のユニットの配下にあるすべての待ち合わせ条件付きユニットを一覧で表示して,それぞれの待ち合わせ条件付きユニットに対して設定してある待ち合わせ対象ユニットを表示します。それぞれの待ち合わせ対象ユニットに対して,定義不正がないかを確認したり,待ち合わせ方法および待ち合わせる世代がない場合の動作の設定を確認したりできます。

待ち合わせ条件の状態を確認する

JP1/AJS3 - Viewの[待ち合わせ条件の状態一覧]ウィンドウおよびajsshowコマンドの-xwオプションは,運用中の待ち合わせ条件付きユニットに対して設定されている待ち合わせ対象ユニットの状態を確認するときに使用します。

[待ち合わせ条件の状態一覧]ウィンドウを,次の図に示します。

図2‒60 [待ち合わせ条件の状態一覧]ウィンドウ

[図データ]

任意の待ち合わせ条件付きユニットを一覧で表示して,それぞれの待ち合わせ条件付きユニットに対して設定してある待ち合わせ対象ユニットを表示します。待ち合わせ対象ユニットの[ジョブネットモニタ]ウィンドウを表示しなくても,待ち合わせ対象ユニットが正常に実行しているかどうかを確認できます。待ち合わせ状態を確認することもできます。

なお,待ち合わせ対象ユニットに起動条件を使用している場合,待ち合わせ対象ユニットの情報には監視世代の情報が表示されます。監視世代の状態と待ち合わせ状態から,待ち合わせ対象ユニットの実行状況を把握できます。詳細については,マニュアル「JP1/Automatic Job Management System 3 運用ガイド 8.3.3(1) 待ち合わせ対象ユニットが起動条件を使用する場合に,待ち合わせの状況を確認する」を参照してください。

また,待ち合わせ条件付きユニットの待ち合わせを,待ち合わせ対象ユニットごとに有効/無効にしたり,待ち合わせ対象ユニットの状態を表示する[ジョブネットモニタ]ウィンドウを開いたりすることもできます。

ajsshowコマンドの詳細については,マニュアル「JP1/Automatic Job Management System 3 コマンドリファレンス 3. 通常の運用で使用するコマンド ajsshow」を参照してください。

注意事項
  • 待ち合わせ条件付きユニットに対して設定してある待ち合わせ対象ユニットの数が多い場合,[待ち合わせ条件の状態一覧]ウィンドウの表示に時間が掛かります。「(5)(a) 待ち合わせ対象ユニットが複数ある場合の待ち合わせ方法」の注意事項を参考に,待ち合わせ対象ユニットの数はできるだけ減らしてください。

  • [待ち合わせ条件の状態一覧]ウィンドウから待ち合わせ対象ユニットの[ジョブネットモニタ]ウィンドウを開くには,待ち合わせ対象ユニット,およびその上位ジョブネットに対してJP1_AJS_Guest権限が必要です。

  • [待ち合わせ条件の状態一覧]ウィンドウおよびajsshowコマンドで確認できる待ち合わせ対象ユニットの情報は,常に待ち合わせルールに基づいて求めた情報を表示します。そのため,待ち合わせの有効化と再実行によって,再度待ち合わせを開始する際に,待ち合わせ条件付きユニットがどのように動作するか(待ち合わせ対象ユニットの実行終了を待つか,待ち合わせがすぐ完了して実行を開始するか,など)を予測することができます。

    一方,待ち合わせ対象ユニットや待ち合わせ条件付きユニットに世代の追加・削除などの操作を行うと,待ち合わせルールによって求まる待ち合わせ対象ユニットの世代が変更されるため,待ち合わせ状態が「完了」になったときの待ち合わせ対象ユニットの情報とは異なる世代の情報が表示される場合があります。常に待ち合わせ状態が「完了」になったときの待ち合わせ対象ユニットの情報を表示するには,待ち合わせ条件付きユニットと待ち合わせ対象ユニットの世代を,どちらも1日分の世代数を保存するようにして,求まる待ち合わせ対象ユニットの世代が一定になるようにしてください。待ち合わせルールについては,「2.2.5(2) 待ち合わせ条件付きユニットと待ち合わせ対象ユニットの待ち合わせルール」を参照してください。

[待ち合わせ条件の設定一覧]ウィンドウおよび[待ち合わせ条件の状態一覧]ダイアログボックスの詳細については,マニュアル「JP1/Automatic Job Management System 3 操作ガイド 12. ウィンドウとダイアログボックス」を参照してください。

(9) 待ち合わせ条件を使用した実行順序制御とジョブネットコネクタを使用した実行順序制御の使い分け

異なるルートジョブネット同士の実行順序を制御したい場合,待ち合わせ条件を設定したり,ジョブネットコネクタを使用したりして,ユニット同士を連携できます。

運用に合わせて,ジョブネットコネクタと待ち合わせ条件のどちらを使用するかを選択してください。

待ち合わせ条件を使用した場合と,ジョブネットコネクタを使用した場合の長所と短所を,次の表に示します。

表2‒15 待ち合わせ条件を使用した場合とジョブネットコネクタを使用した場合の長所と短所

観点

待ち合わせ条件

ジョブネットコネクタ

ユニット構成に関する長所と短所

長所

後続側のユニット(待ち合わせ条件付きユニット)に待ち合わせ条件を設定するだけで定義できるため,ジョブネットの構造を変更する必要がない。

短所

特になし。

長所

特になし。

短所
  • ジョブネットコネクタを新しく定義する必要がある。

  • ネストジョブネットを接続先のジョブネットとして定義したい場合,ネストジョブネットを新しくルートジョブネットとして分割する必要がある。

ユニットの詳細定義に関する長所と短所

長所

先行側のユニット(待ち合わせ対象ユニット)の詳細定義を編集する必要がない。

短所

特になし。

長所

特になし。

短所

接続先のジョブネットの詳細定義に,接続範囲やジョブネットコネクタ名を定義する必要がある。

連携方法の設定に関する長所と短所

長所
  • ルートジョブネット,ネストジョブネット,および各種ジョブ同士を連携できる。

  • 一つの待ち合わせ条件付きユニットに対して,複数の待ち合わせ対象ユニットを設定できる。

短所

異なるスケジューラーサービスのユニット同士を連携できない。連携させたい場合は,ジョブネットコネクタなどを利用してジョブネットを定義し直す必要がある。そのため,待ち合わせ条件とそれ以外の方法を併用する必要がある。

長所

異なるスケジューラーサービスにあるルートジョブネット同士でも連携できる。そのため,連携方法をジョブネットコネクタに統一できる。

短所
  • 連携できるユニットは,ルートジョブネットだけである。

  • 一つのジョブネットコネクタにつき,連携できるルートジョブネットは一つだけである。

ユニットの監視に関する長所と短所

長所

[待ち合わせ条件の状態一覧]ウィンドウを使用して,待ち合わせ対象ユニットと待ち合わせ条件付きユニットを一覧で確認できる。

短所
  • 待ち合わせ対象ユニットと待ち合わせ条件付きユニットは,関連線で関連づけられないため,実行順序が把握しづらい。

  • 待ち合わせ対象ユニットの状態が,待ち合わせ条件付きユニットの状態に反映されない。

長所
  • ジョブネットコネクタをほかのユニットと関連線で関連づけられるため,実行順序が把握しやすい。

  • 接続先のジョブネットの状態がジョブネットコネクタに反映されるため,ジョブネットコネクタを定義しているルートジョブネットを監視すれば,接続先のジョブネットの状態を一元監視できる。

短所

特になし。