2.2 ジョブネットの構築のための検討
2.2.1 ジョブの実行順序を検討する
(a) ジョブネットを入れ子にする
ジョブフローに別のジョブネットを組み込む場合の例を,次の図に示します。
図 2‒3 ネストジョブネットの使用例
この場合,ジョブ A の実行が終了したら,ジョブネット 1 に定義されているジョブが実行され,ジョブ ネット 1 の処理が終了したらジョブ B が実行されます。
(b) 複数のジョブをまとめる
複数の後続ジョブを持つフローは推奨しません。複数のジョブを一つのジョブネットとしてまとめること で,管理しやすくできます。
複数のジョブをネストジョブネットとしてまとめた場合の例を,次の図に示します。
図 2‒4 複数のジョブをネストジョブネットとしてまとめた場合の例
(c) 二つの経路を一つにまとめる
ネストジョブネットを使って,二つの経路を一つにまとめることができます。
「日次処理 1−日次処理 2」と,「日次処理 1−月次処理−日次処理 2」という二つのパスを一つのフローに まとめる例を,次の図に示します。
図 2‒5 ジョブネットのフロー化
「日次処理 1」および「日次処理 2」は毎日実行され,「月次処理」は月に一度だけ実行される場合,JP1/
AJS3 ではその日に実行予定のないジョブネットをスキップして実行するため,一つのパスにまとめること ができます。
(4) 異なるジョブネット間のジョブ同士を順序づけたい場合
JP1/AJS3 では,異なるジョブネット間のジョブ同士を関連線で順序づけることはできません。
異なるジョブネット間のジョブ同士は,次の方法で順序づけることができます。
• ジョブネットを分割する
• ジョブネットを統合する
• ジョブネットコネクタを使用する
• 待ち合わせ条件を使用する
(a) ジョブネットを分割する
ジョブネットを分割する場合の例を,次の図に示します。
図 2‒6 ジョブネットを分割する例
(b) ジョブネットを統合する
ジョブネットを統合する場合の例を,次の図に示します。
図 2‒7 ジョブネットを統合する例
(c) ジョブネットコネクタを使用する
ジョブネットコネクタを使用すると,異なるルートジョブネット間の実行順序を制御できます。ジョブネッ トコネクタを使用する場合の例を,次の図に示します。
図 2‒8 ジョブネットコネクタを使用する例
ジョブネットコネクタの詳細については,「2.2.4 ジョブネットコネクタを使用したルートジョブネットの 実行順序制御」を参照してください。
(d) 待ち合わせ条件を使用する
待ち合わせ条件を使用すると,異なるジョブネットの配下にあるユニット同士の実行順序を制御できます。
待ち合わせ条件を使用する場合の例を,次の図に示します。
図 2‒9 待ち合わせ条件を使用する例
待ち合わせ条件の詳細については,「2.2.5 待ち合わせ条件を使用したユニットの実行順序制御」を参照し てください。
(5) ジョブネットの階層化の考え方
ジョブネットを階層化する目的またはメリットとして,次のことが考えられます。
• ジョブやジョブネットが監視しやすくなります。
• ジョブやジョブネットを変更する際,場所が特定しやすくなります。
• 業務単位にアクセス権(JP1 資源グループ)を割り当てることで,ほかの業務グループの担当者からの アクセスを制限できます。
• 適度に階層化することで,ジョブやジョブネットの起動性能が劣化しにくくなります。
補足事項
階層を深くし過ぎると,監視などの操作をする上で運用しにくくなります。そのため,階層化は 3〜5 階層程度にすることを推奨します。
推奨するジョブネットの階層化の方法を次に示します。
1. 最上位のジョブネットを作成する。
次の図のように,特定の単位ごとに最上位となるジョブネットを作成します。
図 2‒10 最上位のジョブネットの作成例
相互に順序性がない場合は,そのまま最上位のジョブネットとして管理します。
2. 特定の単位ごとに作成したジョブネットに順序性がある場合は,一つのジョブネットにまとめ,階層化 する。
それぞれのジョブネットが順序性を持つ場合の階層化の例を次に示します。
図 2‒11 それぞれのジョブネットが順序性を持つ場合の階層化の例
3. 処理サイクルごとにジョブネットを作成する。
業務単位に異なるサイクルで実行する必要がある場合は,処理サイクルごとにジョブネットをグルーピ ングします。
処理サイクルごとにジョブネットを作成する場合の例を次に示します。
図 2‒12 処理サイクルごとのジョブネットの作成例
処理サイクルに作成するジョブネットには,次の表に示すようなルールを決めておきます。また,この ルールを「コメント」として定義しておくことを推奨します。
表 2‒5 処理サイクルごとにジョブネットを分けた場合のルール
処理サイクルごとのジョブネット ルール
GROUP1 日次,週次,月次,半期,年次の業務が相互に関連を持ったグループ
GROUP2 単独で実行される「日次業務」のグループ
GROUP3 単独で実行される「週次業務」のグループ
GROUP4 単独で実行される「月次業務」のグループ
GROUP5 単独で実行される「半期業務」のグループ
GROUP6 単独で実行される「年次業務」のグループ
GROUP7 単独で実行される「不定期業務」のグループ
4. 最下位のジョブネットを作成する。
処理サイクルごとに分けたジョブネットの下位に,さらに次のような名称を付けたジョブネットを作成 します。ジョブやジョブネットをコマンドで操作する場合や,JP1/IM の自動アクション機能で正規表 現を使用する場合を考慮に入れて,半角英数字で名称を付けることを推奨します。
「xxxxxxDN」
「xxxxxxWN」
「xxxxxxMN」
「xxxxxxHN」
「xxxxxxYN」
「xxxxxxRN」
(凡例)
D:1 日 1 回のサイクルで実行するジョブネット W:週に 1 回のサイクルで実行するジョブネット M:月に 1 回のサイクルで実行するジョブネット H:半期に 1 回のサイクルで実行するジョブネット Y:年に 1 回のサイクルで実行するジョブネット R:不定期に実行するジョブネット
N:ジョブネットを意味する 5. ジョブを作成する。
最後に,次のような名称を付けたジョブを作成します。
「xxxxxxDJ」
「xxxxxxWJ」
「xxxxxxMJ」
「xxxxxxHJ」
「xxxxxxYJ」
(凡例)
D:1 日 1 回のサイクルで実行するジョブ W:週に 1 回のサイクルで実行するジョブ M:月に 1 回のサイクルで実行するジョブ H:半期に 1 回のサイクルで実行するジョブ Y:年に 1 回のサイクルで実行するジョブ J:ジョブを意味する