File Manager バッチ・ジョブの JCL 構文
バッチ・ジョブで File Manager 機能を使用するには、次のステートメントを使用します。//stepname EXEC PGM=FILEMGR
デフォルトでは、レポート出力はSYSPRINTに書き込まれます。出力の一部は、以下のddnamesに代わりに指示することができます。
- FMNROPT
- File Manager アクティブなオプション
- FMNRPRM
- $$FILEM コマンド・パラメーターおよび戻りコード
- FMNRPRC
- SYSIN から読み取られた REXX プロシージャー・ステートメント
- FMNREPT
- コマンド・レポートおよび戻りコード
- FMNRSUM
- TALLY サマリーレポート
JCL に FMNPRINT が存在する場合には、SYSPRINT の代わりに使用されます。JCL に FMNIN が存在する場合には、SYSIN の代わりに使用されます。
さらに、そのバッチ・ジョブに含まれる File Manager 機能によっては、STEPLIB ステートメントまたは他の DD ステートメントが必要になる場合もあります。
File Manager 制御ステートメントをコーディングするときには、以下のことを行う必要があります。
- それぞれの制御ステートメントを 1-7 桁目の
$$FILEM
で開始し、その後の 8 桁目にブランクを続け、さらにコマンド名とその後に最初のパラメーター (もしあれば) を続けます。 - パラメーターとその値を、等号で分離して、指定します。次のようになります。
PARAMETER=value
- 各パラメーター (最後のパラメーターを除いて) の直後にコンマを置きます。
アスタリスク (*) で始まるコメント・ステートメントも使用することができます。
制御ステートメントを次の行に続ける場合、最初の行はコンマで終わり、次の行は $$FILEM
およびブランクで始めます。
1 行に収まらないパラメーターを続ける場合、継続文字は使用しないでください。代わりに、パラメーターを複数の行に分割し、各部分をアポストロフィで囲みます。例:
$$FILEM DSNIN='u/test/this is a regular HFS file ',
$$FILEM 'that has a v',
$$FILEM 'ery long name'
注釈:
- 制御ステートメントに関数名のみが含まれる場合、関数名とコンマの間にスペースを入れる必要があります。
- FCH (検索/変更) ユーティリティーで FIND および CHANGE コマンドを続けるには、最初の行はコンマで終わります (継続行に $$FILEM は入りません)。
- バッチで処理オプションを変更する場合、またはオプションをインストール・デフォルトにリセットする場合、SET 機能を使用します。
例
HEX 形式では、以下の例は、DSP File Manager 機能を使用して 20 件のデータ・セットのレコード (キー値 0001000 を持つレコードから始まる) を印刷するバッチ・ジョブを示しています。
//jobcard
//ABC EXEC PGM=FILEMGR
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
$$FILEM DSP DSNIN='FMNUSER.TEST.KSDS1',
$$FILEM FORMAT=HEX,KEY=000100,NLRECS=20
/*