■ REPROサンプル
▲その1~VSAM to VSAM または PS to VSAM※VSAM to PSはSORTプログラムでも可能です。ここを参照してください。
//STEP1 EXEC PGM=IDCAMS //SYSPRINT DD SYSOUT=* //IN DD DSN=TST.VSAM.MASTER,DISP=SHR //OUT DD DSN=TST.VSAM.FILE01,DISP=SHR ←予めDEL/DEFしておく必要があります //SYSIN DD * REPRO INFILE(IN) OUTFILE(OUT) REUSE /*
※KSDSへのREPRO時、重複レコードがありエラーとなる場合は、ERRORLIMIT(nn)のキーワードを 記述すると、重複しているレコードは無視されます。nnの初期値は4です。
※KSDSへのREPRO時、既に同一キーのレコードがありエラーとなる場合は、REPLACEのキーワードを記述すると、入力のレコードで置き換えることができます。
▲その2~VSAM to PSファイル
//STEP1 EXEC PGM=IDCAMS //SYSPRINT DD SYSOUT=* //IN DD DSN=TST.VSAM.MASTER,DISP=SHR //OUT DD DSN=TEST.PS.FILE01,DISP=(NEW,KEPP),… //SYSIN DD * REPRO INFILE(IN) OUTFILE(OUT) /*
※VSAMファイルをまるごとVSAMまたは順次ファイルにコピーします。
※VBイメージのVSAMをPSファイルにREPROすると「レングス+リザーブ」が 付加されてREPROされます。すなわち、データの「レングス+リザーブ」部の前に 「レングス+リザーブ」が付いてしまいますのでご注意!
こういうときは、SORTプログラムを使ってOUTRECを指定して処理するとうまくいきます。
このサンプルに OUTREC FIELDS=(1,4,9)を付け加えた感じです。
※ライブラリーどおしのREPROはできません!