IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

Removing the duplicay in a record


IBM Mainframe Forums -> DFSORT/ICETOOL
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
vvmanyam

New User


Joined: 16 Apr 2008
Posts: 86
Location: Bangalore

PostPosted: Mon May 05, 2008 4:28 pm
Reply with quote

Hi,

I have an input file
First six bytes is the key.
Each record has 10 other feilds each of 6 bytes which may have duplicate values. I want those fields to come only once along with the key.

With the follwing example we can understand easily

Input file:

AAAAAA 123454 893893 123454 123454 893893
BBBBBB 849749 839275 839275 839275
AAAAAB 849849 848948 849499 938484 949498 490047 894849
AAAAAC 199484 948593 985938 948593 489489 948593


Output:
AAAAAA 123454 893893
BBBBBB 849749 839275
AAAAAB 849849 848948 849499 938484 949498 490047 894849
AAAAAC 199484 948593 985938 489489
Back to top
View user's profile Send private message
Skolusu

Senior Member


Joined: 07 Dec 2007
Posts: 2205
Location: San Jose

PostPosted: Mon May 05, 2008 10:50 pm
Reply with quote

vvmanyam,

The following DFSORT JCL will give you the desired results


Code:

//STEP0100 EXEC PGM=ICEMAN                             
//SYSOUT   DD SYSOUT=*                                 
//SORTIN   DD *                                         
AAAAAA    123454893893123454123454893893               
BBBBBB    849749839275839275839275                     
AAAAAB    849849848948849499938484949498490047894849   
AAAAAC    199484948593985938948593489489948593         
//SORTOUT  DD SYSOUT=*                                 
//SYSIN    DD *   
  SORT FIELDS=COPY                                                   
  INREC IFTHEN=(WHEN=(11,6,CH,EQ,17,6,CH),OVERLAY=(17:6X),HIT=NEXT),
        IFTHEN=(WHEN=(11,6,CH,EQ,23,6,CH),OVERLAY=(23:6X),HIT=NEXT),
        IFTHEN=(WHEN=(11,6,CH,EQ,29,6,CH),OVERLAY=(29:6X),HIT=NEXT),
        IFTHEN=(WHEN=(11,6,CH,EQ,35,6,CH),OVERLAY=(35:6X),HIT=NEXT),
        IFTHEN=(WHEN=(11,6,CH,EQ,41,6,CH),OVERLAY=(41:6X),HIT=NEXT),
        IFTHEN=(WHEN=(11,6,CH,EQ,47,6,CH),OVERLAY=(47:6X),HIT=NEXT),
        IFTHEN=(WHEN=(11,6,CH,EQ,53,6,CH),OVERLAY=(53:6X),HIT=NEXT),
        IFTHEN=(WHEN=(11,6,CH,EQ,59,6,CH),OVERLAY=(59:6X),HIT=NEXT),
        IFTHEN=(WHEN=(11,6,CH,EQ,65,6,CH),OVERLAY=(65:6X),HIT=NEXT),
        IFTHEN=(WHEN=(17,6,CH,EQ,23,6,CH),OVERLAY=(23:6X),HIT=NEXT),
        IFTHEN=(WHEN=(17,6,CH,EQ,29,6,CH),OVERLAY=(29:6X),HIT=NEXT),
        IFTHEN=(WHEN=(17,6,CH,EQ,35,6,CH),OVERLAY=(35:6X),HIT=NEXT),
        IFTHEN=(WHEN=(17,6,CH,EQ,41,6,CH),OVERLAY=(41:6X),HIT=NEXT),
        IFTHEN=(WHEN=(17,6,CH,EQ,47,6,CH),OVERLAY=(47:6X),HIT=NEXT),
        IFTHEN=(WHEN=(17,6,CH,EQ,53,6,CH),OVERLAY=(53:6X),HIT=NEXT),
        IFTHEN=(WHEN=(17,6,CH,EQ,59,6,CH),OVERLAY=(59:6X),HIT=NEXT),
        IFTHEN=(WHEN=(17,6,CH,EQ,65,6,CH),OVERLAY=(65:6X),HIT=NEXT),
        IFTHEN=(WHEN=(23,6,CH,EQ,29,6,CH),OVERLAY=(29:6X),HIT=NEXT),
        IFTHEN=(WHEN=(23,6,CH,EQ,35,6,CH),OVERLAY=(35:6X),HIT=NEXT),
        IFTHEN=(WHEN=(23,6,CH,EQ,41,6,CH),OVERLAY=(41:6X),HIT=NEXT),
        IFTHEN=(WHEN=(23,6,CH,EQ,47,6,CH),OVERLAY=(47:6X),HIT=NEXT),
        IFTHEN=(WHEN=(23,6,CH,EQ,53,6,CH),OVERLAY=(53:6X),HIT=NEXT),
        IFTHEN=(WHEN=(23,6,CH,EQ,59,6,CH),OVERLAY=(59:6X),HIT=NEXT),
        IFTHEN=(WHEN=(23,6,CH,EQ,65,6,CH),OVERLAY=(65:6X),HIT=NEXT),
        IFTHEN=(WHEN=(29,6,CH,EQ,35,6,CH),OVERLAY=(35:6X),HIT=NEXT),
        IFTHEN=(WHEN=(29,6,CH,EQ,41,6,CH),OVERLAY=(41:6X),HIT=NEXT),
        IFTHEN=(WHEN=(29,6,CH,EQ,47,6,CH),OVERLAY=(47:6X),HIT=NEXT),
        IFTHEN=(WHEN=(29,6,CH,EQ,53,6,CH),OVERLAY=(53:6X),HIT=NEXT),
        IFTHEN=(WHEN=(29,6,CH,EQ,59,6,CH),OVERLAY=(59:6X),HIT=NEXT),
        IFTHEN=(WHEN=(29,6,CH,EQ,65,6,CH),OVERLAY=(65:6X),HIT=NEXT),
        IFTHEN=(WHEN=(35,6,CH,EQ,41,6,CH),OVERLAY=(41:6X),HIT=NEXT),
        IFTHEN=(WHEN=(35,6,CH,EQ,47,6,CH),OVERLAY=(47:6X),HIT=NEXT),
        IFTHEN=(WHEN=(35,6,CH,EQ,53,6,CH),OVERLAY=(53:6X),HIT=NEXT),
        IFTHEN=(WHEN=(35,6,CH,EQ,59,6,CH),OVERLAY=(59:6X),HIT=NEXT),
        IFTHEN=(WHEN=(35,6,CH,EQ,65,6,CH),OVERLAY=(65:6X),HIT=NEXT),
        IFTHEN=(WHEN=(41,6,CH,EQ,47,6,CH),OVERLAY=(47:6X),HIT=NEXT),
        IFTHEN=(WHEN=(41,6,CH,EQ,53,6,CH),OVERLAY=(53:6X),HIT=NEXT),
        IFTHEN=(WHEN=(41,6,CH,EQ,59,6,CH),OVERLAY=(59:6X),HIT=NEXT),
        IFTHEN=(WHEN=(41,6,CH,EQ,65,6,CH),OVERLAY=(65:6X),HIT=NEXT),
        IFTHEN=(WHEN=(47,6,CH,EQ,53,6,CH),OVERLAY=(53:6X),HIT=NEXT),
        IFTHEN=(WHEN=(47,6,CH,EQ,59,6,CH),OVERLAY=(59:6X),HIT=NEXT),
        IFTHEN=(WHEN=(47,6,CH,EQ,65,6,CH),OVERLAY=(65:6X),HIT=NEXT),
        IFTHEN=(WHEN=(53,6,CH,EQ,59,6,CH),OVERLAY=(59:6X),HIT=NEXT),
        IFTHEN=(WHEN=(53,6,CH,EQ,65,6,CH),OVERLAY=(65:6X),HIT=NEXT),
        IFTHEN=(WHEN=(59,6,CH,EQ,65,6,CH),OVERLAY=(65:6X),HIT=NEXT) 
/*


Hope this helps...

Cheers
Back to top
View user's profile Send private message
vvmanyam

New User


Joined: 16 Apr 2008
Posts: 86
Location: Bangalore

PostPosted: Tue May 06, 2008 11:06 am
Reply with quote

Thanks, for the solution
Is this the only way to achieve this logic in a jcl?
or any other simple method is there?
Back to top
View user's profile Send private message
Skolusu

Senior Member


Joined: 07 Dec 2007
Posts: 2205
Location: San Jose

PostPosted: Wed May 07, 2008 2:56 am
Reply with quote

vvmanyam wrote:
Thanks, for the solution
Is this the only way to achieve this logic in a jcl?


vvmanyam,

JCL is not a programming language cannot do any thing by itself. It is your PGMS or Utilities which are invoked by JCL that perform the functions. JCL does not do any data manipulation.

vvmanyam wrote:
or any other simple method is there?


Define Simple method.
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> DFSORT/ICETOOL

 


Similar Topics
Topic Forum Replies
No new posts How to split large record length file... DFSORT/ICETOOL 10
No new posts SFTP Issue - destination file record ... All Other Mainframe Topics 2
No new posts FINDREP - Only first record from give... DFSORT/ICETOOL 3
No new posts To find whether record count are true... DFSORT/ICETOOL 6
No new posts Validating record count of a file is ... DFSORT/ICETOOL 13
Search our Forums:

Back to Top