shell100
New User
Joined: 14 Apr 2006 Posts: 25 Location: Banglore,India
|
|
|
|
I have file as below:
Feld-1 Feld-2 Feld-3
AAAA BBBB +0000000000100000
AAAA BBBB +0000000000100000
BBBB CCCC +0000000000100000
BBBB CCCC +0000000000100000
I am sorting on field 1 and 2 and the sum field is on 3rd field
Feild-3 is of 16 digits preceding with A + or - sign, so total length is 17 bytes.
So I could not use ZD ,FS,CFS formats as it is more that 17 bytes.
Can anyone please help me out in writing a sort step for the above. |
|
Frank Yaeger
DFSORT Developer
Joined: 15 Feb 2005 Posts: 7129 Location: San Jose, CA
|
|
|
|
Quote: |
I am sorting on field 1 and 2 and the sum field is on 3rd field
Feild-3 is of 16 digits preceding with A + or - sign, so total length is 17 bytes.
So I could not use ZD ,FS,CFS formats as it is more that 17 bytes. |
DFSORT can SUM ZD fields up to 31 bytes, but these are not ZD fields, and FS/CSF cannot be used with SUM.
However, you can use the following DFSORT job to do what you want by using SECTIONS with TOT for the 17-byte FS field.
Code: |
//S1 EXEC PGM=ICEMAN
//SYSOUT DD SYSOUT=*
//SORTIN DD DSN=... input file
//SORTOUT DD DSN=... output file
//SYSIN DD *
SORT FIELDS=(1,9,CH,A)
OUTFIL REMOVECC,NODETAIL,
SECTIONS=(1,9,
TRAILER3=(1,10,
TOT=(11,17,FS,EDIT=(STTTTTTTTTTTTTTTT),SIGNS=(+,-))))
/*
|
|
|