CL

98. CLPの対話式デバッグ

OPM の CLP であってもソースを見ながらの対話型のデバッグが行える方法がある。

もうご存知の方も多いと思うが STRISDB コマンドを使うと
RPG III の対話型のデバッグを行えるだけでなく
OPM の CLP も STRISDB を使うと
ソース・デバッグを行うことができる。
ここで OPM の CLP とは従来型の通常の CLP である。
CRTCLMOD + CRTPGM などで *SRVPGM などを
バインドして作成されるのが ILE の CLP である。
弊社でも CLP でバインド型の ILE-CLP を開発することもあるが
やはり大半の CLP は未だに OPM である。
もちろん海外サイトなどでも CLP はほとんどが OPM であるので
OPM の CLP を使っているからといって古いわけではない。

【例】
STRISDB PGM(ASNET.COM/SELDEVDSP) UPDPROD(*YES) INVPGM(*NO)

のように実行するとコマンド入力画面が表示されるので

【コマンド入力画面】

次にデバッグしたい対象のプログラムをコマンドや
CALL 命令などを使って実行すると最初のステップから
ソース画面が表示されるので
F5キーによってステップ毎に進めていくことができる。

IBM はなぜ OPM のデバッグに「STRISDB」という覚えにくい、
理解しにくい名前のコマンドにして開発したのだろうか ?
また STRDBG コマンドであれば F10キーによってステップ進行するが
STRISDB は F5キーである。
同じ会社が開発したとは思えない。
それであれば STRDBG コマンドを拡張して OPM でも使用できるように
したほうが良かったのではないだろうか?