
目的
: 不定期に連鎖ジョブ、つまり、先行および後続関係でリンクされたジョブセットをスケジュールしなければならないような場合に使用します。この連鎖ジョブのスケジューリングを全ジョブのスケジューリングが
1 つのチェーンのように見える単一のジョブとしてまとめればスケジュールが楽になります。この連結の利点は、単一のジョブをスケジュールするだけで連鎖ジョブを開始可能なことです。連鎖ジョブのスケジューリング
:
実行
: このジョブを 3 つの小さな ABAP レポートで実行します。以下が 2 つとも含まれています。最初のレポートはジョブ
1 を即座に実行するようにスケジュールします。ジョブ 1 は一部の作業を行い、ジョブ 2 とジョブ 3 の両方をスケジュールします。ジョブ 1 とジョブ 2 との間には厳密な先行、後続の関係はありません。通常、ジョブ 2 はジョブ 1 の処理が完了するまで開始されません。しかし、ジョブ 1 とジョブ 2 のステップは重複しても構いません。たとえば、ジョブ 1 の ”Program_X” が外部プログラムで、ジョブ 1 は Program_X の完了を待たない場合、ジョブ 2 の ”Program_Y” とジョブ 1 の Program_X が重複する可能性があります。ジョブ
1 はそれ自体の後続ジョブをスケジュールすることができないので、ジョブ 2 とジョブ 3 の両方をスケジュールしなければなりません。これは、後続ジョブがスケジュールされるときに先行ジョブのステータスが スケジュール済またはリリース済となっていなければならないためです。連鎖ジョブを設定したい場合は、この例のように単独の第一レポートあるいはジョブから設定してください。ジョブ
2 は、次に実行され終了するとジョブ 3 を開始します。ここでは、ジョブ 3 は JOB_CLOSE 汎用モジュールの pred_jobname 引数を使用して厳密にジョブ 2 を先行ジョブとするようにリンクされています。 predjob_checkstat 引数により、ジョブ 2 が正常終了した場合にのみジョブ 3 が開始されるようになっています。プログラミングサンプルについては、 サンプルプログラム : JOB_CLOSE を使用した先行ジョブ終了待機を参照してください。