View previous topic :: View next topic
|
Author |
Message |
ashok4u_it
New User
Joined: 12 Mar 2008 Posts: 53 Location: Chennai
|
|
|
|
Hi,
I want to sort a 'N' number of records without affecting the header part of the file.
For Example, I have a fille with header and data portion.
XXXXXXX - Header part
ZZZZZZZ - Data Part
TTTTTTTT - Data Part
DDDDDD - Data Part
BBBBBBB - Data Part
AAAAAAA - Data Part
After sorting, my header part should remain the same. It should not be touched (I mean it should not be sorted along with the data portion). Only the Data portion alone be sorted.
My Output should be,
XXXXXXX
AAAAAAA
BBBBBBB
DDDDDDD
TTTTTTT
ZZZZZZZ
Please help me out with single DFSORT step.
Note:- No Icetool is used. DFSORT is the only option to be used.
Thanks,
Ashok Kumar.K |
|
Back to top |
|
|
Skolusu
Senior Member
Joined: 07 Dec 2007 Posts: 2205 Location: San Jose
|
|
|
|
ashok4u_it,
Quote: |
Please help me out with single DFSORT step. Note:- No Icetool is used. DFSORT is the only option to be used. |
I don't get this. ICETOOL is part of DFSORT. ICETOOL has been shipped with DFSORT since 1991! |
|
Back to top |
|
|
ashok4u_it
New User
Joined: 12 Mar 2008 Posts: 53 Location: Chennai
|
|
|
|
Oops... Everytime, I used to get the statement as "ICETOOL IS A PART OF DFSORT"... Yup, I know it is a part of DFSORT. But, i do have some restrictions in using ICETOOL statements in my work place. Please believe and understand me. But, no reasons yet from my admin.
Thanks
Ashok Kumar.K |
|
Back to top |
|
|
Skolusu
Senior Member
Joined: 07 Dec 2007 Posts: 2205 Location: San Jose
|
|
|
|
ashok4u_it,
The following DFSORT JCL will give you the desired results. I assumed that your input is FB recfm and 80 bye LRECL and your key to be sorted is first 9 bytes.
Code: |
//STEP0100 EXEC PGM=SORT
//SYSOUT DD SYSOUT=*
//SORTIN DD *
XXXXXXX - HEADER PART
ZZZZZZZ - DATA PART
TTTTTTTT - DATA PART
DDDDDD - DATA PART
BBBBBBB - DATA PART
AAAAAAA - DATA PART
//SORTOUT DD SYSOUT=*
//SYSIN DD *
INREC IFTHEN=(WHEN=INIT,OVERLAY=(81:SEQNUM,8,ZD)),
IFTHEN=(WHEN=(81,8,ZD,GT,1),OVERLAY=(81:C'2'))
SORT FIELDS=(81,1,CH,A,1,9,CH,A),EQUALS
OUTREC BUILD=(1,80)
/* |
The output of this is
Code: |
XXXXXXX - HEADER PART
AAAAAAA - DATA PART
BBBBBBB - DATA PART
DDDDDD - DATA PART
TTTTTTTT - DATA PART
ZZZZZZZ - DATA PART
|
|
|
Back to top |
|
|
vasanthz
Global Moderator
Joined: 28 Aug 2007 Posts: 1742 Location: Tirupur, India
|
|
|
|
Thats,
Really cool |
|
Back to top |
|
|
ashok4u_it
New User
Joined: 12 Mar 2008 Posts: 53 Location: Chennai
|
|
|
|
Thanks a lot Skolusu. It works fine. Thanks for ur help.
Regards
Ashok K. |
|
Back to top |
|
|
|