vvgoud
New User
Joined: 16 Aug 2007 Posts: 27 Location: Hyderabad
|
|
|
|
Hi,
I need to divide the input file into two output files
OUTPUT FILE1: Should not have duplicates
OUTPU FILE2: Should have duplicate Records
Requirement: SNO should be '1' and NAME & JOB should not duplicate)
INPUT FILE:
SNO PIC X(1)
NAME PIC X(6)
DATE PIC X(6)
JOB PIC X(3).
------------------------------
1 VENKAT 070809 MGR
1 RAJESH 080706 SSE
7 NAGESH 090808 MGR
3 SURESH 060607 SE
1 VENKAT 090807 MGR
1 RAJESH 080809 SSE
6 NAGESH 080809 MGR
9 MAHESH 080809 MGR
9 MAHESH 080809 MGR
------------------------------
OUTPUT FILE1:(No Duplicates)
------------------------------
1 VENKAT 070809 MGR
1 RAJESH 080706 SSE
7 NAGESH 090808 MGR
3 SURESH 060607 SE
6 NAGESH 080809 MGR
9 MAHESH 080809 MGR
9 MAHESH 080809 MGR
------------------------------
OUTPUT FILE2:(Duplicates)(SNO = 1 AND Same NAME & JOB should not repeat)
------------------------------
1 VENKAT 090807 MGR
1 RAJESH 080809 SSE
------------------------------
Please let me know if you need any details.
Thanks,
Goud. |
|
Skolusu
Senior Member
Joined: 07 Dec 2007 Posts: 2205 Location: San Jose
|
|
|
|
vvgoud,
The following DFSORT/ICETOOL JCL will give you the desired results
Code: |
//STEP0100 EXEC PGM=ICETOOL
//TOOLMSG DD SYSOUT=*
//DFSMSG DD SYSOUT=*
//IN DD DSN=your input file,DISP=SHR
//UNQ DD SYSOUT=*
//DUP DD SYSOUT=*
//TOOLIN DD *
SELECT FROM(IN) TO(UNQ) ON(1,7,CH) ON(14,11,CH) -
FIRST DISCARD(DUP) USING(CTL1)
//CTL1CNTL DD *
INREC IFTHEN=(WHEN=INIT,BUILD=(1,16,SEQNUM,8,ZD)),
IFTHEN=(WHEN=(1,1,CH,EQ,C'1'),OVERLAY=(17:8C'0'))
OUTFIL FNAMES=UNQ,BUILD=(1,16)
OUTFIL FNAMES=DUP,BUILD=(1,16)
/*
|
|
|