IEHPROGMは、MVS(z/OS)における、順次データセット、区分データセット・メンバーのリネームと削除などを行うユーティリティー・プログラムです。MSPではJSGPROGM、VOS3ではJSFCTLGとして提供されています。プログラム名は異なるものの、JCLもSYSIN制御ステートメントも含め、基本的に互換ユーティリティーです。
IEHPROGMでは、データセットやメンバーの名前を変えたり、削除を行う際に、カタログの変更までは行われません。カタログも併せて変更するには、同時にそのデータセットのアンカタログ、再カタログを制御ステートメントで指定しなければなりません。カタログ・エントリーは、リネームやスクラッチの際に自動的には更新されません。このユーティリティーが提供された頃のOSでは、カタログを使うことは今ほど一般的ではありませんでした。言い換えれば業務処理で使うデータセットは、カタログを使わなくても、十分管理できる程度の規模(数)で運用されていたからでもあります。今でもユーティリティーの機能は互換ですから、カタログ・エントリーの変更や削除が自動的にされない点も変わっていません。
SMS管理データセットなど、カタログが前提の今日のシステム運用では、IEHPROGMを使う機会はめっきり少なくなりました。特に、SMS管理データセットのカタログやアンカタログは、IEHPROGMでは行うことができません。データセットやメンバーのリネームと削除は、非VSAMデータセットであってもAMSユーティリティーで行うことができますし(AMSならカタログも同時に変更される)、削除だけならJCLのDDステートメント(DISPパラメーター)で簡単に行えます。また、ISPFなどの対話型ユーティリティーなら操作も簡単です。
IEHPROGMには、その他にパスワード・データセットの保守機能もありますが、こちらはRACFによるセキュリティー管理が必須となった現在では、新たに覚える必要もないでしょう。
昔から運用されてきたバッチ処理の中で、IEHPROGMユーティリティーがそのまま使われていることもあります。そのようなJCLを解析するような際の知識として知っておけば十分ではないかと考えます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
//DSOPERAT EXEC PGM=IEHPROGM //SYSPRINT DD SYSOUT=* //DASD DD DISP=OLD,UNIT=SYSDA,VOL=SER=ZDAT02 //SYSIN DD * RENAME DSNAME=TEST.DATA1,NEWNAME=TEST.DATA2,VOL=SYSDA=ZDAT02 SCRATCH DSNAME=TEST.DATA3,VOL=SYSDA=ZDAT02 // カタログ・エントリーも同時に変更するには次のように指定する。 //DSOPERAT EXEC PGM=IEHPROGM //SYSPRINT DD SYSOUT=* //DASD DD DISP=OLD,UNIT=SYSDA,VOL=SER=ZDAT02 //SYSIN DD * RENAME DSNAME=TEST.DATA1,NEWNAME=TEST.DATA2,VOL=SYSDA=ZDAT02 UNCATLG DSNAME=TEST.DATA1 CATLG DSNAME=TEST.DATA2,VOL=3390=ZDAT02 SCRATCH DSNAME=TEST.DATA3,VOL=SYSDA=ZDAT02 UNCATLG DSNAME=TEST.DATA3 // 同じ事をするAMSのJCL。 //DSOPERAT EXEC PGM=IDCAMS //SYSPRINT DD SYSOUT=* //SYSIN DD * ALTER TEST.DATA1 NEWNAME(TEST.DATA2) DELETE TEST.DATA3 // |
区分データセットのメンバーのリネームと削除についてのサンプルは、「区分データセットのメンバー名変更と削除」および「非VSAMデータセット(PS,PDS)の操作いろいろ」の区分データセットのメンバーを改名(リネーム)する、削除するを参照して下さい。