バッチJOBのデバッグ手法
バッチJOBで動作しているプログラムのデバッグは出来ないとあきらめていたり、難しいと考えていないでしょうか。
実際に体験してみるとそれほど難しくないことがわかります。
また、この方法はバッチJOBだけでなく対話型の別のJOBに対しても行えますのでとても便利です。
事前にWRKACTJOB等でJOB名、JOBユーザー、JOB番号を調べておき、サービスJOBを開始します。
あとは、通常のデバッグと同様STRDBGをおこないます。
現在動作中でデバッグ投入のタイミングが難しい場合にはWRKACTJOBで該当のJOBを一度保留してから
デバッグを開始すればタイミングをとりやすいと思います。
デバッグモードにした後JOBを開放させます。
残念ながら、以下のようにSTRISDBは使用できませんでした。
【デバッグできた方法】
・ILE のSTRDBG(ソース表示)
・RPG3のSTRDBG(ソース表示なしの手動でのデバッグ)
【デバッグできない方法】
・RPG3のSTRISDB(ソース表示)
私が使っていて便利だと思ったのは、
エンドユーザーからアベンドの問い合わせがきたときに、画面の状態がそのままのばあいにこれを使用して、その場でデバッグをしてしまいます。(ただし余裕がある場合しか使用できませんが、、、)
■参考情報「インフォメーションセンター[V5R4] 「CLプログラミング」「ジョブを使用した他のジョブのデバッグ」
実際に体験してみるとそれほど難しくないことがわかります。
また、この方法はバッチJOBだけでなく対話型の別のJOBに対しても行えますのでとても便利です。
> STRSRVJOB JOB(000001/USER/JOB) > STRDBG XYZLIB/MYPGMUPDPROD(*YES) (中略) > ENDDBG > ENDSRVJOB |
事前にWRKACTJOB等でJOB名、JOBユーザー、JOB番号を調べておき、サービスJOBを開始します。
あとは、通常のデバッグと同様STRDBGをおこないます。
現在動作中でデバッグ投入のタイミングが難しい場合にはWRKACTJOBで該当のJOBを一度保留してから
デバッグを開始すればタイミングをとりやすいと思います。
デバッグモードにした後JOBを開放させます。
残念ながら、以下のようにSTRISDBは使用できませんでした。
【デバッグできた方法】
・ILE のSTRDBG(ソース表示)
・RPG3のSTRDBG(ソース表示なしの手動でのデバッグ)
【デバッグできない方法】
・RPG3のSTRISDB(ソース表示)
私が使っていて便利だと思ったのは、
エンドユーザーからアベンドの問い合わせがきたときに、画面の状態がそのままのばあいにこれを使用して、その場でデバッグをしてしまいます。(ただし余裕がある場合しか使用できませんが、、、)
■参考情報「インフォメーションセンター[V5R4] 「CLプログラミング」「ジョブを使用した他のジョブのデバッグ」