I have around 90 fields in my file which are signed numeric, i want to replace space with + for numeric field only. The file is of 3200 bytes having other datatypes too.
I am using following jcl
Code:
//SORTSTP2 EXEC PGM=SORT,PARM='DYNALLOC'
//SYSPRINT DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//SORTIN DD DSN=TOP1.COMOD.FSL601A.D0313.DT,DISP=SHR
//SORTOUT DD DSN=TOP1.COMOD.FSL601A.D0313.DT1,
// DISP=(NEW,CATLG,DELETE),
// UNIT=SYSDA,
// DCB=*.SORTIN,
// SPACE=(100,(100,100),RLSE)
//SYSIN DD *
* PUT SPECIAL KEY OF '+' IN PLACE OF ' ' IN THE RECORD.
INREC IFTHEN=(WHEN=(10,1,CH,EQ,C' '),OVERLAY=(10:C'+')),
IFTHEN=(WHEN=(27,1,CH,EQ,C' '),OVERLAY=(27:C'+')),
IFTHEN=(WHEN=(44,1,CH,EQ,C' '),OVERLAY=(44:C'+')),
IFTHEN=(WHEN=(61,1,CH,EQ,C' '),OVERLAY=(61:C'+')),
IFTHEN=(WHEN=(78,1,CH,EQ,C' '),OVERLAY=(78:C'+')),
IFTHEN=(WHEN=(95,1,CH,EQ,C' '),OVERLAY=(95:C'+'))
SORT FIELDS=COPY
OUTREC FIELDS=(1,3122)
//
Joined: 15 Feb 2005 Posts: 7129 Location: San Jose, CA
Are you asking how to use IFTHEN to make multiple changes to the same record for different fields? If so, then the answer is to use the HIT=NEXT parameter. Without HIT=NEXT, DFSORT stops when the IFTHEN condition is satisfied. With HIT=NEXT, DFSORT continues to the next IFTHEN clause.