View previous topic :: View next topic
|
Author |
Message |
praveen_kandrakota
New User
Joined: 13 Feb 2008 Posts: 9 Location: hyderabad
|
|
|
|
1. To sort the file by record key which include the below fields and accumaulate the total under that key
01 (WS)-RECORD.
03 (WS)-REC-KEY.
05 (WS)-WHIRL-ORG PIC 9(03).
05 (WS)-OWNING-BRANCH PIC 9(09).
05 (WS)-ORIGIN-SOURCE PIC X(05).
05 (WS)-AFFINITY-GRP.
07 (WS)-PARTNER PIC X(04).
07 (WS)-AFFINITY PIC X(04).
07 (WS)-AFFILIATION PIC X(04).
07 (WS)-SUB-AFFILIATION PIC X(04).
07 (WS)-REWARDS-LEVEL PIC X(04).
For example:
if the input file contains that data
080XXXXXXXXXYYYYYAAAABBBBCCCCDDDDEEEE
080XXXXXXXXXYYYYYAAAABBBBCCCCDDDDEEEE
080XXXXXXXXXYYYYYAAAABBBBCCCCDDDDEEEE
080XXXXXXXXXYYYYYFFFFBBBBCCCCDDDDGGG
080XXXXXXXXXHHHHHFFFFBBBBCCCCDDDDGGG
080XXXXXXXXXYYYYYFFFFBBBBCCCCDDDDGGG
080XXXXXXXXXHHHHHFFFFBBBBCCCCDDDDGGG
the out put file should contains
080XXXXXXXXXYYYYYAAAABBBBCCCCDDDDEEEE3
080XXXXXXXXXYYYYYFFFFBBBBCCCCDDDDGGG2
080XXXXXXXXXHHHHHFFFFBBBBCCCCDDDDGGG2
The last byte like 3,2&2 should specify the count of records with the same key
01 (WS)-RECORD.
03 (WS)-REC-KEY.
05 (WS)-WHIRL-ORG PIC 9(03).
05 (WS)-OWNING-BRANCH PIC 9(09).
05 (WS)-ORIGIN-SOURCE PIC X(05).
05 (WS)-AFFINITY-GRP.
07 (WS)-PARTNER PIC X(04).
07 (WS)-AFFINITY PIC X(04).
07 (WS)-AFFILIATION PIC X(04).
07 (WS)-SUB-AFFILIATION PIC X(04).
07 (WS)-REWARDS-LEVEL PIC X(04).
03 (WS)-TOTAL-APPS PIC S(09) COMP-3.
03 FILLER PIC X(38).
[/list][/code] |
|
Back to top |
|
|
shankar.v
Active User
Joined: 25 Jun 2007 Posts: 196 Location: Bangalore
|
|
|
|
Hi praveen_kandrakota,
Please check with the following code for your requirement.
Code: |
// EXEC PGM=SORT
//SYSOUT DD SYSOUT=*
//SORTIN DD *
080XXXXXXXXXYYYYYAAAABBBBCCCCDDDDEEEE
080XXXXXXXXXYYYYYAAAABBBBCCCCDDDDEEEE
080XXXXXXXXXYYYYYAAAABBBBCCCCDDDDEEEE
080XXXXXXXXXYYYYYFFFFBBBBCCCCDDDDGGGG
080XXXXXXXXXHHHHHFFFFBBBBCCCCDDDDGGGG
080XXXXXXXXXYYYYYFFFFBBBBCCCCDDDDGGGG
080XXXXXXXXXHHHHHFFFFBBBBCCCCDDDDGGGG
//SORTOUT DD SYSOUT=*
//SYSIN DD *
SORT FIELDS=(1,37,CH,A)
OUTFIL REMOVECC,NODETAIL,
SECTIONS=(1,37,TRAILER3=(1,37,COUNT=(TO=PD,LENGTH=5)))
/*
// |
Output: (HEX ON MODE)
Code: |
080XXXXXXXXXHHHHHFFFFBBBBCCCCDDDDGGGG :
FFFEEEEEEEEECCCCCCCCCCCCCCCCCCCCCCCCC0000244444444444444444444444444444444444444
08077777777788888666622223333444477770000C00000000000000000000000000000000000000
------------------------------------------------------------------------------
080XXXXXXXXXYYYYYAAAABBBBCCCCDDDDEEEE :
FFFEEEEEEEEEEEEEECCCCCCCCCCCCCCCCCCCC0000344444444444444444444444444444444444444
08077777777788888111122223333444455550000C00000000000000000000000000000000000000
------------------------------------------------------------------------------
080XXXXXXXXXYYYYYFFFFBBBBCCCCDDDDGGGG :
FFFEEEEEEEEEEEEEECCCCCCCCCCCCCCCCCCCC0000244444444444444444444444444444444444444
08077777777788888666622223333444477770000C00000000000000000000000000000000000000
------------------------------------------------------------------------------ |
Thanks,
Shankar |
|
Back to top |
|
|
praveen_kandrakota
New User
Joined: 13 Feb 2008 Posts: 9 Location: hyderabad
|
|
|
|
hi sankar,
If you dont mine could you please explain about NODETAIL , Trailer3 and COUNT=(TO=PD) parameters |
|
Back to top |
|
|
shankar.v
Active User
Joined: 25 Jun 2007 Posts: 196 Location: Bangalore
|
|
|
|
Hi praveen_kandrakota,
Quote: |
could you please explain about NODETAIL , Trailer3 and COUNT=(TO=PD) parameters |
Please find the information regarding NODETAIL, TRAILER3 and COUNT=(TO=PD) in the below link.
http://publibz.boulder.ibm.com/zoslib/pdf/ice1ca20.pdf
Thanks,
Shankar |
|
Back to top |
|
|
praveen_kandrakota
New User
Joined: 13 Feb 2008 Posts: 9 Location: hyderabad
|
|
|
|
Thanks alot |
|
Back to top |
|
|
praveen_kandrakota
New User
Joined: 13 Feb 2008 Posts: 9 Location: hyderabad
|
|
|
|
Hi sankar,
i have created job in the below
Code: |
//STEP030 EXEC PGM=SORT
//SORTIN DD DSN=DERP.CP000000.CDMH.FFB.NFL,
// DISP=SHR
//SORTOUT DD DSN=DERP.CP000000.CDMH.FFB.NFLMOTLY(+1),
// DISP=(,CATLG,DELETE),
// SPACE=(CYL,(20,10),RLSE)
//SYSOUT DD SYSOUT=*
//SYSIN DD *
SORT FIELDS=(1,37,CH,A)
OUTFIL REMOVECC,NODETAIL,
SECTIONS=(1,37,TRAILER3=(1,37,COUNT=(TO=PD,LENGTH=5)))
/*
|
The input file contains the data as follows.
Code: |
080XXXXXXXXXYYYYYAAAABBBBCCCCDDDDEEEEFFFF2
080XXXXXXXXXYYYYYAAAABBBBCCCCDDDDEEEEFFFF3
080XXXXXXXXXYYYYYAAAABBBBCCCCDDDDEEEEFFFF4
080XXXXXXXXXYYYYYAAAABBBBCCCCDDDDEEEEFFFF1
080YYYYYYYYYZZZZZGGGGBBBBCCCCDDDDEEEEFFFF2
080WWWWWWWWWAAAAAHHHHBBBBCCCCDDDDEEEEFFFF3
080UUUUUUUUUSSSSSAAAABBBBCCCCDDDDEEEEFFFF4
080YYYYYYYYYZZZZZGGGGBBBBCCCCDDDDEEEEFFFF5
080WWWWWWWWWAAAAAHHHHBBBBCCCCDDDDEEEEFFFF7
080UUUUUUUUUSSSSSAAAABBBBCCCCDDDDEEEEFFFF8
080YYYYYYYYYZZZZZGGGGBBBBCCCCDDDDEEEEFFFF5
|
The opput file should be like
Code: |
080UUUUUUUUUSSSSSAAAABBBBCCCCDDDDEEEE2
080WWWWWWWWWAAAAAHHHHBBBBCCCCDDDDEEEE2
080XXXXXXXXXYYYYYAAAABBBBCCCCDDDDEEEE2
080YYYYYYYYYZZZZZGGGGBBBBCCCCDDDDEEEE3
|
The last digit specifies the count of the reccords of same key
but the output is creating as below
Code: |
080UUUUUUUUUSSSSSAAAABBBBCCCCDDDDEEEE.....
080WWWWWWWWWAAAAAHHHHBBBBCCCCDDDDEEEE.....
080XXXXXXXXXYYYYYAAAABBBBCCCCDDDDEEEE....<
080YYYYYYYYYZZZZZGGGGBBBBCCCCDDDDEEEE.....
|
Could you please let me know what is incorrect |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19244 Location: Inside the Matrix
|
|
|
|
Hello,
Your output appears correct - you specified PD which is not readable (hence the "dots" and special characters). If you look at the file with HEX ON, you will see valid packed-decimal numbers. |
|
Back to top |
|
|
|