As suggested by someone, you can use SORT to generate the appropriate
commands.
I've build the following JCL, which you can use as a starting point to
your needs.
//*
//*CLEANUP
//*
//SUBSETEXEC PGM=IEFBR14
//SORTOF1 DD DSN=SO.S1.RACF.REG200,DISP=(MOD,DELETE),
// UNIT=(3390),SPACE=(CYL,(1,10),RLSE)
//SORTOF2 DD DSN=SO.S1.RACF.REG220,DISP=(MOD,DELETE),
// UNIT=(3390),SPACE=(CYL,(1,10),RLSE)
//SORTOF3 DD DSN=SO.S1.RACF.REG270,DISP=(MOD,DELETE),
// UNIT=(3390),SPACE=(CYL,(1,10),RLSE)
//SORTOF4 DD DSN=SO.S1.RACF.REG102,DISP=(MOD,DELETE),
// UNIT=(3390),SPACE=(CYL,(1,10),RLSE)
//SORTOF5 DD DSN=SO.S1.RACF.REG404,DISP=(MOD,DELETE),
// UNIT=(3390),SPACE=(CYL,(1,10),RLSE)
//SORTOF6 DD DSN=SO.S1.RACF.REG505,DISP=(MOD,DELETE),
// UNIT=(3390),SPACE=(CYL,(1,10),RLSE)
//*
//*FILTRA REGISTROS
//*
//SEPARAEXEC PGM=SORT
//SYSOUTDD SYSOUT=*
//SORTINDD DSN=YOUR.IRRDBU00.UNLOAD.FILE,DISP=SHR
//SORTOF1 DD DSN=SO.S1.RACF.REG200,DISP=(,CATLG),
// UNIT=(3390),SPACE=(CYL,(1,10),RLSE)
//SORTOF2 DD DSN=SO.S1.RACF.REG220,DISP=(,CATLG),
// UNIT=(3390),SPACE=(CYL,(1,10),RLSE)
//SORTOF3 DD DSN=SO.S1.RACF.REG270,DISP=(,CATLG),
// UNIT=(3390),SPACE=(CYL,(1,10),RLSE)
//SORTOF4 DD DSN=SO.S1.RACF.REG102,DISP=(,CATLG),
// UNIT=(3390),SPACE=(CYL,(1,10),RLSE)
//SORTOF5 DD DSN=SO.S1.RACF.REG404,DISP=(,CATLG),
// UNIT=(3390),SPACE=(CYL,(1,10),RLSE)
//SORTOF6 DD DSN=SO.S1.RACF.REG505,DISP=(,CATLG),
// UNIT=(3390),SPACE=(CYL,(1,10),RLSE)
//SYSIN DD *
OPTION COPY,VLSHRT,SPANINC=RC0
OUTFIL INCLUDE=(005,4,CH,EQ,C'0200',AND,
010,8,CH,EQ,C'USERID'),FILES=1,
CONVERT,OUTREC=(5,300),VLFILL=C' '
OUTFIL INCLUDE=(005,4,CH,EQ,C'0220',AND,
010,8,CH,EQ,C'USERID'),FILES=2,
CONVERT,OUTREC=(5,300),VLFILL=C' '
OUTFIL INCLUDE=(005,4,CH,EQ,C'0270',AND,
010,8,CH,EQ,C'USERID'),FILES=3,
CONVERT,OUTREC=(5,1100),VLFILL=C' '
OUTFIL INCLUDE=(005,4,CH,EQ,C'0102',AND,
019,8,CH,EQ,C'USERID'),FILES=4,
CONVERT,OUTREC=(5,300),VLFILL=C' '
OUTFIL INCLUDE=(005,4,CH,EQ,C'0404',AND,
062,8,CH,EQ,C'USERID'),FILES=5,
CONVERT,OUTREC=(5,300),VLFILL=C' '
OUTFIL INCLUDE=(005,4,CH,EQ,C'0505',AND,
266,8,CH,EQ,C'USERID'),FILES=6,
CONVERT,OUTREC=(5,300),VLFILL=C' '
//*
//ADDUSER EXEC PGM=SORT
//SYSOUTDD SYSOUT=*
//SORTINDD DSN=SO.S1.RACF.REG200,DISP=SHR
//SORTOUT DD SYSOUT=*
//SYSIN DD *
SORTFIELDS=COPY
OUTFIL OUTREC=(C' ADDUSER ',
06,8,C' OWNER(',26,8,C') DFLTGRP(',096,8,C') + ',
/,
C' PASSWORD(',06,8,C') ',
C'NAME(''',75,20,C''')')
END
//ALTUTSO EXEC PGM=SORT
//SYSOUTDD SYSOUT=*
//SORTINDD DSN=SO.S1.RACF.REG220,DISP=SHR
//SORTOUT DD SYSOUT=*
//SYSIN DD *
SORTFIELDS=COPY
OUTFIL OUTREC=(C' ALTUSER ',