%REPRO 拡張は、IDCAMS を呼び出す EXEC 文の PARM キーワードおよび PARM コマンドで指定できます。構文は次のとおりです。
%REPRO(VSAM | VSAMLAX | OSCOPY | OSCOPYLAX)
| 属性 | 一致する必要があるコマンド オプション |
|---|---|
| RECFM | OSCOPY および OSCOPYLAX |
| DSORG | OSCOPY および OSCOPYLAX |
| VSAM-KEY-OFFSET | OSCOPY および OSCOPYLAX |
| VSAM-KEY-LENGTH | OSCOPY および OSCOPYLAX |
| LRECL | OSCOPY および OSCOPYLAX |
| LRECL-MAX (システム管理) | OSCOPY および OSCOPYLAX |
| LRECL-MIN (システム管理) | OSCOPY および OSCOPYLAX |
| CHARSET (EBCDIC または ASCII) | OSCOPY |
| EXTENDED-TYPE (システム管理。基本のクラスター、AIX などを示す) | OSCOPY |
| REUSE/NOREUSE | OSCOPY |
| UNIQUEKEY/NONUNIQUEKEY (AIX および PATH 用) | OSCOPY |
次に例を示します。
//STEPAMS EXEC PGM=IDCAMS,PARM=';MFE:%REPRO(OSCOPY)'
//SYSPRINT DD SYSOUT=*
//VSAMDATA DD *
AA
BBB
//SYSIN DD *
PARM ;MFE: %REPRO(VSAM)
/* Next REPRO will use normal REPRO */
REPRO IFILE (VSAMDATA) -
ODS (MFIDSA.REPROOS.KSDS1)
PARM ;MFE: %REPRO(OSCOPY)
/* All REPRO(s), until another PARM command specifies –
otherwise, will use OS copy if possible */
REPRO IDS (MFIDSA.REPROOS.KSDS1) -
ODS (MFIDSA.REPROOS.KSDS2)
拡張はセミコロンの後に続くため、メインフレームではコメントとして表示されます。ただし、拡張が PARM コマンドの唯一のオプションである場合、メインフレームではエラーが報告されます。この問題を回避するには、拡張以外にオプションを 1 つ以上コーディングする必要があります。たとえば、上記の例のように厳密にコーディングするのではなく、次のようにします。
PARM='MAR(2,72);MFE: %REPRO(OSCOPY)'
あるいは、次のようなコーディングも可能です。
PARM MAR(2,72);MFE: %REPRO(OSCOPY)