Portal | Manuals | References | Downloads | Info | Programs | JCLs | Master the Mainframes
IBM Mainframe Computers Forums Index
 
Register
 
IBM Mainframe Computers Forums Index Mainframe: Search IBM Mainframe Forum: FAQ Memberlist Usergroups Profile Log in to check your private messages Log in
 

 

find non-matching reocrds
Goto page 1, 2  Next
 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> JCL & VSAM
View previous topic :: :: View next topic  
Author Message
nileshyp

New User


Joined: 22 Jun 2005
Posts: 65
Location: Mumbai

PostPosted: Wed Nov 30, 2011 11:36 am    Post subject: find non-matching reocrds
Reply with quote

Hi,

I have a requirement in which I need to compare FILE1 and FILE2 and get non matching records in File1 in a separate file.

FILE1 LRECL=300
FILE2 LRECL=300

I need to compare entire 300 length record.

I have written SORT Step as below :

Code:


//S1    EXEC  PGM=SYNCSORT                                     
//SYSOUT DD SYSOUT=*                                           
//MASTER DD DSN=R2K0C00U.N0.MRP6909.MT.G0192V00,DISP=SHR       
//KEY DD DSN=CRUMTEST.MRP6909.MT.NOV11,DISP=SHR               
//SORTOUT  DD DSN=CRUMTEST.MRP6909.MT.NOV11.DIFFER,           
//   DISP=(NEW,CATLG,DELETE),UNIT=SYSDA,SPACE=(CYL,(9,99),RLSE),
//  DCB=(RECFM=FB,LRECL=300,BLKSIZE=0)                         
//SYSIN DD *                                                   
  JOINKEYS F1=MASTER,FIELDS=(1,300,A)                         
  JOINKEYS F2=KEY,FIELDS=(1,300,A)                             
  REFORMAT FIELDS=(F1:1,300)                                   
  SORT FIELDS=COPY                                             
  OUTFIL FNAMES=OUT,OUTREC=(1:300)                             
/*                                                             
//       



However After running the jobI am getting below error. Please suggest if any modification required in my JCL?

Code:


SYNCSORT FOR Z/OS  1.1DR   TPF3   U.S. PATENTS: 4210961, 5117495  (C) 2002
                             AMERICAN INTERNATIONAL GROUP DATA CENTER NJ   
PRODUCT LICENSED FOR CPU SERIAL NUMBER 6682E, MODEL 2086 230              L
SYSIN :                                                                   
  JOINKEYS F1=MASTER,FIELDS=(1,300,A)                                     
  *                                                                       
  JOINKEYS F2=KEY,FIELDS=(1,300,A)                                         
  *                                                                       
  REFORMAT FIELDS=(F1:1,300)                                               
  *                                                                       
  SORT FIELDS=COPY                                                         
  OUTFIL FNAMES=OUT,OUTREC=(1:300)                                         
WER275A  NO KEYWORDS FOUND ON CONTROL STATEMENT                           
WER275A  NO KEYWORDS FOUND ON CONTROL STATEMENT                           
WER275A  NO KEYWORDS FOUND ON CONTROL STATEMENT



Thanks in advance

Regards,
Neil
Back to top
View user's profile Send private message

gcicchet

Senior Member


Joined: 28 Jul 2006
Posts: 1703
Location: Australia

PostPosted: Wed Nov 30, 2011 1:21 pm    Post subject:
Reply with quote

Hi,

are there duplicates in either file ?


Gerry
Back to top
View user's profile Send private message
Anuj Dhawan

Senior Member


Joined: 22 Apr 2006
Posts: 6258
Location: Mumbai, India

PostPosted: Wed Nov 30, 2011 1:44 pm    Post subject:
Reply with quote

Quote:
WER275A NO KEYWORDS FOUND ON CONTROL STATEMENT
This might mean two things:

  • The SORT-statements are not starting from 3rd column
  • Per this
    Quote:
    SYNCSORT FOR Z/OS 1.1DR
    , you're running on an earlier release of SyncSort which, I think, does not support JOINKEYS, though I've not verified it - but it's an old version.
Back to top
View user's profile Send private message
nileshyp

New User


Joined: 22 Jun 2005
Posts: 65
Location: Mumbai

PostPosted: Wed Nov 30, 2011 1:50 pm    Post subject: Reply to: find non-matching reocrds
Reply with quote

There are no duplicates. However is there any alternative solution?

Regards,
Neil
Back to top
View user's profile Send private message
gcicchet

Senior Member


Joined: 28 Jul 2006
Posts: 1703
Location: Australia

PostPosted: Wed Nov 30, 2011 2:12 pm    Post subject:
Reply with quote

Hi,

try this
Code:
//S1       EXEC  PGM=ICETOOL                                       
//TOOLMSG  DD SYSOUT=*                                             
//DFSMSG   DD SYSOUT=*                                             
//IN1      DD DSN=file1,DISP=SHR                                   
//IN2      DD DSN=file2,DISP=SHR                                   
//T1       DD DSN=&&T1,UNIT=SYSDA,SPACE=(CYL,(5,5)),DISP=(MOD,PASS)
//OUT      DD SYSOUT=*                                             
//TOOLIN   DD    *                                                 
COPY FROM(IN1) TO(T1) USING(CTL1)                                 
COPY FROM(IN2) TO(T1) USING(CTL2)                                 
SELECT FROM(T1) TO(OUT) ON(1,300,CH) NODUPS USING(CTL3)           
/*                                                                 
//CTL1CNTL DD *                                                   
  INREC OVERLAY=(301:C'1')                                         
/*                                                                 
//CTL2CNTL DD *                                                   
  INREC OVERLAY=(301:C'2')                                         
/*                                                                 
//CTL3CNTL DD *                                                   
  OUTFIL FNAMES=OUT,INCLUDE=(301,1,CH,EQ,C'1'),                   
    BUILD=(1,300)                                                 
/*


Gerry
Back to top
View user's profile Send private message
xknight

Active User


Joined: 22 Jan 2008
Posts: 117
Location: Liberty city

PostPosted: Wed Nov 30, 2011 4:56 pm    Post subject:
Reply with quote

Hello,

If you need to do using JOINS , try the below

Code:
//STEP05   EXEC PGM=SORT                                             
//SORTJNF1 DD DSN=R2K0C00U.N0.MRP6909.MT.G0192V00,         
//            DISP=SHR                                               
//SORTJNF2 DD DSN=CRUMTEST.MRP6909.MT.NOV11,         
//            DISP=SHR                                               
//SORTOUT  DD DSN=CRUMTEST.MRP6909.MT.NOV11.DIFFER,         
//         DISP=(NEW,CATLG,DELETE),RECFM=FB,LRECL=300,BLKSIZE=0,     
//         SPACE=(CYL,(20,10),RLSE),UNIT=SYSDA                       
//SYSOUT   DD SYSOUT=*                                               
//SYSIN    DD *                                                       
  JOINKEYS FILE=F1,FIELDS=(1,300,A)                                   
  JOINKEYS FILE=F2,FIELDS=(1,300,A)                                   
  SORT FIELDS=COPY                                                   
  JOIN UNPAIRED,F1,ONLY                                               
  REFORMAT FIELDS=(F1:1,300)                                         
/*
Back to top
View user's profile Send private message
nileshyp

New User


Joined: 22 Jun 2005
Posts: 65
Location: Mumbai

PostPosted: Wed Nov 30, 2011 5:00 pm    Post subject: Reply to: find non-matching reocrds
Reply with quote

Gerry,

I tried above JCL but failed with below error

Code:


SYNCSORT FOR Z/OS  1.1DRI  TPF3   U.S. PATENTS: 4210961, 5117495  (C) 2002 SYNC
                             AMERICAN INTERNATIONAL GROUP DATA CENTER NJ   z/OS
PRODUCT LICENSED FOR CPU SERIAL NUMBER 6682E, MODEL 2086 230              LICEN
CTL1CNTL :                                                                   
  INREC OVERLAY=(301:C'1')                                                   
        *                                                                     
WER428I  CALLER-PROVIDED IDENTIFIER IS "0001"                                 
WER268A  INREC STATEMENT   : SYNTAX ERROR


Code:

1SYT000I  SYNCTOOL RELEASE 1.4D - COPYRIGHT 2003  SYNCSORT INC.
 SYT001I  INITIAL PROCESSING MODE IS "STOP"
 SYT002I  "TOOLIN" INTERFACE BEING USED
          COPY FROM(IN1) TO(T1) USING(CTL1)
 SYT020I  SYNCSORT CALLED WITH IDENTIFIER "0001"
 SYT012E  SYNCSORT COMPLETED UNSUCCESSFULLY
 SYT030I  OPERATION COMPLETED WITH RETURN CODE 16
 SYT015I  PROCESSING MODE CHANGED FROM "STOP" TO "SCAN" DUE TO OPERATION FAILURE
          COPY FROM(IN2) TO(T1) USING(CTL2)
 SYT019I  STATEMENT VALID; NOT PROCESSED DUE TO "SCAN" PROCESSING MODE
          SELECT FROM(T1) TO(OUT) ON(1,300,CH) NODUPS USING(CTL3)
 SYT019I  STATEMENT VALID; NOT PROCESSED DUE TO "SCAN" PROCESSING MODE
 SYT004I  SYNCTOOL PROCESSING COMPLETED WITH RETURN CODE 16
Back to top
View user's profile Send private message
Bill Woodger

DFSORT Moderator


Joined: 09 Mar 2011
Posts: 7223

PostPosted: Wed Nov 30, 2011 5:14 pm    Post subject:
Reply with quote

xknight wrote:
[...]
If you need to do using JOINS , try the below
[...]


That was where the thread started....
Back to top
View user's profile Send private message
Bill Woodger

DFSORT Moderator


Joined: 09 Mar 2011
Posts: 7223

PostPosted: Wed Nov 30, 2011 5:16 pm    Post subject: Reply to: find non-matching reocrds
Reply with quote

Do you have a manual for this very old Syncsort version?
Back to top
View user's profile Send private message
xknight

Active User


Joined: 22 Jan 2008
Posts: 117
Location: Liberty city

PostPosted: Wed Nov 30, 2011 6:17 pm    Post subject:
Reply with quote

Quote:
That was where the thread started....


Ofcourse yes, mentioned since gerry has posted the solution on SYNCTOOL
Back to top
View user's profile Send private message
dick scherrer

Site Director


Joined: 23 Nov 2006
Posts: 19270
Location: Inside the Matrix

PostPosted: Wed Nov 30, 2011 9:09 pm    Post subject:
Reply with quote

Hello,

As far as i can tell the choices are to upgrade the product to the current release or write some code.

Release 1.1 is years out of data.
Back to top
View user's profile Send private message
dbzTHEdinosauer

Global Moderator


Joined: 20 Oct 2006
Posts: 6966
Location: porcelain throne

PostPosted: Wed Nov 30, 2011 9:54 pm    Post subject:
Reply with quote

and we know that
AMERICAN INTERNATIONAL GROUP DATA CENTER NJ
are soooo cheap
i wonder if they are legal?
Back to top
View user's profile Send private message
dbzTHEdinosauer

Global Moderator


Joined: 20 Oct 2006
Posts: 6966
Location: porcelain throne

PostPosted: Wed Nov 30, 2011 9:59 pm    Post subject:
Reply with quote

geee? i wonder if the google crawlers catch the previous post?

oh that would be to bad (not)
Back to top
View user's profile Send private message
enrico-sorichetti

Global Moderator


Joined: 14 Mar 2007
Posts: 10201
Location: italy

PostPosted: Wed Nov 30, 2011 10:08 pm    Post subject: Reply to: find non-matching reocrds
Reply with quote

well the name is pretty outdated, according to Bloomberg

Quote:
...
The company was formerly known as American International Group Data Center, Inc. and changed its name to AIG Technologies, Inc. in 2004.
...
Back to top
View user's profile Send private message
dbzTHEdinosauer

Global Moderator


Joined: 20 Oct 2006
Posts: 6966
Location: porcelain throne

PostPosted: Wed Nov 30, 2011 10:23 pm    Post subject:
Reply with quote

i can understand that a place is too cheap to upgrade their software,
but I wonder if they have a valid license?

it is one thing for a company, in the name of cost-cutting,
to deprive systems and programming staff a current version of a general utility,
but it is another for the firm to cheat syncsort out of their license fee.

i admit, that I had assumed that this company:
  • has the use of a computer whether:
    • they rent off a bigger machine
    • or are a bunch of ex-salesmen that
      1. have cheap options on hardware and
      2. severely curtailed the op-sys software
  • and outsourced the application maintanence.

sounds like i was pretty close.
I wonder if this AIG Tech... is/was part of AIG Insurance Group?
If so, good luck Alissa, collecting anything from that bunch.

have a good weekend, everybody!
Back to top
View user's profile Send private message
enrico-sorichetti

Global Moderator


Joined: 14 Mar 2007
Posts: 10201
Location: italy

PostPosted: Wed Nov 30, 2011 11:33 pm    Post subject: Reply to: find non-matching reocrds
Reply with quote

Yep ...
Quote:
AIG Technologies, Inc. operates as a subsidiary of American International Group, Inc.
Back to top
View user's profile Send private message
Bill Woodger

DFSORT Moderator


Joined: 09 Mar 2011
Posts: 7223

PostPosted: Thu Dec 01, 2011 12:07 am    Post subject: Reply to: find non-matching reocrds
Reply with quote

Odd for something to be running such old software. Syncsort has "keys" to validate the use of the product. Did they not in 2002?

nileshyp, looking at the JCL it says PGM=SYNCSORT. Are all your Sorts like that at your site? You didn't write that from scratch without thinking, did you?

If your site is running an old, unsupported, unlicenced product, I think you'd better let your boss know that it has accidently become public knowledge.
Back to top
View user's profile Send private message
dbzTHEdinosauer

Global Moderator


Joined: 20 Oct 2006
Posts: 6966
Location: porcelain throne

PostPosted: Thu Dec 01, 2011 12:53 am    Post subject:
Reply with quote

ssssssssssshhhhhhhheeeeeeeeeiiiiitt.

bill, always the nice guy...

'sides, you really think this guy is going to run to his boss,
and tell him that he is responsible for this negative publicity??
Back to top
View user's profile Send private message
dick scherrer

Site Director


Joined: 23 Nov 2006
Posts: 19270
Location: Inside the Matrix

PostPosted: Thu Dec 01, 2011 12:55 am    Post subject:
Reply with quote

Hello,

Lots of the "Syncsort systems" i've worked on use pgm=syscsort. As many simply use pgm=sort.

One of my sites only recently moved up from 1.1 to the newest 1.4. This after being cautioned that there may be incompatabilities when moving to z/OS 1.09 and 1.11. They just continued to pay the license/maintenance fee. When the license was about to expire, the "time-out" message would show saying how many days until exipration. . .
Back to top
View user's profile Send private message
Bill Woodger

DFSORT Moderator


Joined: 09 Mar 2011
Posts: 7223

PostPosted: Thu Dec 01, 2011 2:59 am    Post subject: Reply to: find non-matching reocrds
Reply with quote

610 hits on google. So not the only site, so probably not blunder.

I suppose the old version is cheaper.

The nice guys are having a competition. I managed to hex Vasanthz with his prediction of Tendulkar's score, got a lucky "collateral" on Anuj (did you see the way he dissed that guy), now I just need to nobble Ed and the prize is mine... ALL MINE!

Anyway, if AIG want to hunt him down, he's left enough clues.

Oh. This isn't a PM, is it? Looks like I've nobbled myself, as the late Frankier Howerd might have said...
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> JCL & VSAM All times are GMT + 6 Hours
Goto page 1, 2  Next
Page 1 of 2

 

Search our Forum:

Similar Topics
Topic Author Forum Replies Posted
No new posts How to find the first monday of the w... abdulrafi COBOL Programming 10 Fri Nov 25, 2016 3:24 pm
No new posts Matching with Key at different postions. rajatbagga DFSORT/ICETOOL 12 Wed Nov 09, 2016 10:58 am
No new posts Find out a active PGM jpsager JCL & VSAM 10 Fri Oct 07, 2016 4:32 pm
No new posts How to find a CICS resource used in C... Arunkumar Chandrasekaran CICS 8 Thu Sep 29, 2016 1:45 pm
No new posts TSO Logon Failing - Acount Not matching SLNewton TSO/ISPF 1 Thu Aug 25, 2016 9:37 pm


Facebook
Back to Top
 
Mainframe Wiki | Forum Rules | Bookmarks | Subscriptions | FAQ | Tutorials | Contact Us