OUTREC Inserting Zeros Example


Scenario - Add 5 binary zeroes from 1-5 positions and the existing record from 6th byte.

Input File - MATEPK.SORT.INPUT01 - FB file of 80 length

----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
00001     student1           dept1          560
00003     student3           dept2          520
00004     student4           dept1          540
00005     student5           dept2          500
00002     student2           dept3          510

JCL -

----+----1----+----2----+----3----+----4----+----5----+----6----+----7--
//Job-card
//*
//STEP01   EXEC PGM=SORT
//SORTIN   DD DSN=MATEPK.SORT.INPUT01,DISP=SHR
//SORTOUT   DD DSN=MATEPK.MERGE.OUTPUT,
//            DISP=(NEW,CATLG,DELETE),UNIT=SYSDA,
//            SPACE=(CYL,(1,4),RLSE),
//            DCB=(RECFM=FB,LRECL=80,BLKSIZE=0)
//SYSOUT   DD SYSOUT=*
//SYSIN    DD *
     SORT FIELDS=(1,5,CH,A)
     OUTREC FIELDS=(5Z,1,75)
/*

Output -

----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
0000000001     student1           dept1          560
0000000002     student2           dept3          510
0000000003     student3           dept2          520
0000000004     student4           dept1          540
0000000005     student5           dept2          500

Explaining Example -

  1. OUTREC FIELDS=(5Z,…) will add 5 zeroes to the output record from the byte 1.
  2. OUTREC FIELDS=(..,1,75) copies the input file data(1-75 positions) to the output file (starting from 6th byte).