■  入力ファイルの一部を置き換えてCOPYする方法


その1

//SORT1EXECSORT 
//SORTINDDDSN=…,DISP=SHR 
//SORTOUTDDDSN=…,DISP=(,KEEP),… 
//SYSINDD* 
 SORT FIELD=COPY←OPTION COPYと同じ
 OUTFIL FNAMES=SORTOUT,
  OUTREC=(1,39,C'T')
/*   
   このサンプルは、INPUTの1〜39
バイト目をOUTPUTの1〜39バイトにセット、
「T」をOUTPUTの40バイト目にセットする



その2

//SORT1EXECSORT 
//SORTINDDDSN=…,DISP=SHR 
//SORTOUTDDDSN=…,DISP=(,KEEP),… 
//SYSINDD* 
 OPTION COPY
 OUTFIL FNAMES=SORTOUT,
  OUTREC=(1,10,11,1,CHANGE=(1,X'00',X'F0',C' ',C'X'),20,40)
/*   
    INPUTの1バイト目から10バイトをそのままセット
INPUTの11バイト目から1バイトを変更 (X'00'はX'F0'へ、C'  'はC'X'へ変更)
INPUTの20バイト目から40バイトをセット

  注意) 既に他のビットが立っている場合はU−212でアベンドします。
  ↓ メッセージ
MATCH NOT FOUND FOR SORTOUT CHANGE FIELD AT POSITION 11
  ↓
この場合は、「NOMATCH=(11,1)を指定します」



その3

//SORT1EXECSORT 
//SORTINDD* 
AAAAA67890
BBBBB67890
CCCCC67890
//SORTOUTDDDSN=…,DISP=(,KEEP),… 
//SYSINDD* 
 OPTION COPY
 OUTFIL FNAMES=SORTOUT,
  OUTREC=(1,5,CHANGE=(5,C'AAAAA',C'XXXXX',C'BBBBB',C'ZZZZZ',
                 NOMATCH=(1,5),
     6,75)
/*   
    INPUTの1バイト目から5バイトをセットするがその5バイトが、AAAAAだった場合はXXXXXに変換、BBBBBだった場合はZZZZZに変換してセット
AAAAAでもBBBBBでもない場合はそのままセット
その次にINPUTの6バイト目から75バイトをそのままセット



BEFORE PAGE

TOP PAGE