saujanya_2831
New User
Joined: 09 May 2007 Posts: 27 Location: pune
|
|
|
|
Hi actually i want to compare 2 files based on keys and get non matching in third file.and i want to mask few keys.
previously this was done by comparex and iam looking for an alternative so .Is this possible.
KEY=(1,2,C,A)
KEY=(3,4,C,A)
KEY=(7,16,C,A)
KEY=(23,16,C,A)
KEY=(39,15,C,A)
KEY=(54,6,C,A)
KEY=(60,7,C,A)
KEY=(81,1,C,A)
MASK=(61,19)
MASK=(82,END)
MAXDIFF=5
CONTINUE
PRINT=MISMATCH
COPYDIFF
this was the control card of comparex.i dont know much about syncsort but i have some material
and going through it and trying to accomplish what comaparex used to do.If at least i can get
non matching records based on keys thats enough for me.masking of fields no need.and i have synsort
SYNCSORT FOR Z/OS 1.2.1.0RI
(C) 2005 SYNCSORT INC.
I have tried the following JCL
Code: |
//SYNCSORT EXEC PGM=SYNCTOOL
//TOOLMSG DD SYSOUT=*
//SSMSG DD SYSOUT=*
//IN DD DSN=inputfile1,DISP=SHR
// DD DSN=inputfile2,DISP=SHR
//OUT DD DSN=outputfile,DISP=(,CATLG),
// DCB=(RECFM=FB,LRECL=90,BLKSIZE=27000),
// SPACE=(27000,(15000,100),RLSE),UNIT=DISK
//TOOLIN DD *
SELECT FROM(IN) TO(OUT) ON(1,66,CH) ON(81,1,CH) NODUPS
/*
|
but still iam getting empty file and when i give alldups its giving all the records.
any suggestins |
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19244 Location: Inside the Matrix
|
|
|
|
Hello,
I'd suggest you build 2 small test files and only use a single key (until you get the process working the way you want), then you can expand for the real data.
Also, i'd suggest you read the doc about JOINKEYS and JOIN. That should do what you want. This uses the SORT rather than Synctool. |
|