ジョブフロー(ジョブの実行順序)を作成する前に、知っておいていただきたい基本的なジョブフローの動作について説明します。
ジョブフローの基本的な動作
作成されたジョブフローは、基本的には、以下のように動作します。
先頭のジョブから、接続線で結ばれている順に起動されます。
先行するジョブが正常終了すると後続のジョブが起動されます。ジョブが異常終了した場合は、そこで処理は中断します。
ただし、リカバリジョブが接続されている場合は、異常終了しても処理は中断されず、リカバリジョブが起動されます。
ジョブの正常終了と異常終了
ジョブが正常終了か異常終了かは、ジョブの終了コードで判断されます。
初期状態では、以下のように判断されます。
正常終了 | 終了コードが0 |
異常終了 | 終了コードが1以上 |
正常終了として扱われる範囲は変更できます。
変更方法については、“正常終了の範囲を変更する”を参照してください。
正常終了の範囲を変更する
例えば、終了コードを利用して分岐させるようなフローを作成したい場合、初期状態のままでは、終了コード0のみが正常終了として扱われるため、それ以外の終了コードは異常終了となり、処理が中断してしまいます。そのため、該当の終了コードを示した時でも、異常終了として処理が中断されないように設定をしておく必要があります。
このような場合には、正常終了として扱う範囲を変更することにより対処します。正常終了の範囲は、以下のいずれかの方法で変更できます。
ジョブ情報の“正常終了コード上限値”を変更します。
変更後は、0から設定した上限値までの終了コードが、正常終了として扱われるようになります。
ジョブ情報の“終了コードに関わらず正常”を設定します。
設定すると、ジョブがどのような終了コードを示しても正常終了として扱われ、処理が中断されません。
参考
疑似正常について
正常終了として扱う終了コードの上限値を広げた場合に、本来の正常終了(終了コード0)と区別して、終了コード1~上限値までを疑似正常として扱うことができます。“疑似正常を有効とする”を設定すると、ジョブの状態としては以下のように区別されるようになります。
正常終了 | 0 |
疑似正常 | 1~設定した上限値 |
疑似正常は、状態としては正常終了と区別されますが、処理としては正常終了として扱われます。
疑似正常を有効にする場合は、[ジョブスケジューラ起動パラメタの定義]ウィンドウ-[利用機能1]シート の[ステータスオプション]で設定します。