Frank Yaeger
DFSORT Developer
Joined: 15 Feb 2005 Posts: 7129 Location: San Jose, CA
|
|
|
|
I believe this DFSORT job will do what you asked for:
Code: |
//S1 EXEC PGM=ICEMAN
//SYSOUT DD SYSOUT=*
//SORTIN DD DSN=... input file (FB/40)
//SYMHD DD DSN=&&S1,UNIT=SYSDA,SPACE=(TRK,(1,1)),DISP=(,PASS)
//SYMTRL DD DSN=&&S2,UNIT=SYSDA,SPACE=(TRK,(1,1)),DISP=(,PASS)
//DATA DD DSN=&&D1,UNIT=SYSDA,SPACE=(CYL,(5,5)),DISP=(,PASS)
//SYSIN DD *
OPTION COPY
OUTFIL FNAMES=DATA,
OMIT=(2,5,CH,EQ,C'REPORT',OR,
31,5,CH,EQ,C'PAGE:',OR,
3,3,CH,EQ,C'FLD',OR,
3,4,CH,EQ,C'NO.1',OR,
3,4,CH,EQ,C'----',OR,
1,10,CH,EQ,C' ',OR,
2,9,CH,EQ,C'NUMBER OF')
OUTFIL FNAMES=SYMHD,ENDREC=5,
IFOUTLEN=80,
IFTHEN=(WHEN=(2,5,CH,EQ,C'REPORT'),
BUILD=(C'HLN1,''',1,40,C'''')),
IFTHEN=(WHEN=(31,5,CH,EQ,C'PAGE:'),
BUILD=(C'HLN2,''',1,36,C'''')),
IFTHEN=(WHEN=(3,3,CH,EQ,C'FLD'),
BUILD=(C'HLN3,''',1,40,C'''')),
IFTHEN=(WHEN=(3,4,CH,EQ,C'NO.1'),
BUILD=(C'HLN4,''',1,40,C'''')),
IFTHEN=(WHEN=(3,4,CH,EQ,C'----'),
BUILD=(C'HLN5,''',1,40,C''''))
OUTFIL FNAMES=SYMTRL,
INCLUDE=(1,10,CH,EQ,C' ',OR,
2,9,CH,EQ,C'NUMBER OF'),
IFOUTLEN=80,
IFTHEN=(WHEN=(1,10,CH,EQ,C' '),
BUILD=(C'TLN1,''',1,40,C'''')),
IFTHEN=(WHEN=(2,9,CH,EQ,C'NUMBER OF'),
BUILD=(C'TLN2,''',1,40,C''''))
/*
//S2 EXEC PGM=ICEMAN
//SYSOUT DD SYSOUT=*
//SYMNAMES DD DSN=&&S1,DISP=(OLD,PASS)
// DD DSN=&&S2,DISP=(OLD,PASS)
//SORTIN DD DSN=&&D1,DISP=(OLD,PASS)
//SORTOUT DD SYSOUT=*
//SYSIN DD *
SORT FIELDS=(3,4,ZD,A,18,10,ZD,A)
OUTFIL LINES=71,REMOVECC,
HEADER2=(HLN1,/,HLN2,PAGE=(EDIT=(TTTT)),/,HLN3,/,
HLN4,/,HLN5),
TRAILER1=(TLN1,/,TLN2)
/*
|
|
|