MVSFORUMS.com Forum Index MVSFORUMS.com
A Community of and for MVS Professionals
 
 FAQFAQ   SearchSearch   Quick Manuals   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Error during matching files using Icetool or Syncsort

 
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> Utilities
View previous topic :: View next topic  
Author Message
naren_ab
Beginner


Joined: 07 Jan 2003
Posts: 32
Topics: 10

PostPosted: Mon Jan 23, 2006 5:09 pm    Post subject: Error during matching files using Icetool or Syncsort Reply with quote

I need to compare 2 files, fileA has key in pos=4, length=13, and fileB has in position=19 length=13, fileA LRECL=20, LRECL for fileB=300.
when there is match fileB needs to written to output.

here the job I am using:
Code:

//STEP0100 EXEC PGM=ICETOOL                                     
//TOOLMSG  DD SYSOUT=*                                           
//DFSMSG   DD SYSOUT=*                                           
//T1       DD DSN=&T1,UNIT=DISK,SPACE=(CYL,(5,5),RLSE),         
//            DISP=(MOD,PASS)                                   
//CON      DD DSN=fileA,DISP=SHR                     
//         DD DSN=&T1,VOL=REF=*.T1,DISP=(OLD,PASS)               
//IN1      DD DSN=FileB,DISP=SHR                   
//TOOLIN   DD *                                                 
  COPY FROM(IN1) TO(T1) USING(CTL1)                             
  SELECT FROM(CON) TO(OUT) ON(4,13,CH) ON(19,13,CH)  ALLDUPS     
//CTL1CNTL DD *                                                 
  OUTREC FIELDS=(1,300)                                         
//OUT      DD DSN=Output.file,                         
//            DISP=(NEW,CATLG,CATLG),UNIT=DISK,                 
//           DCB=(RECFM=FB,LRECL=0,BLKSIZE=0),SPACE=(CYL,(1,1)) 
//DFSPARM  DD *                                                 
  OPTION EQUALS                                                 
//*                                       

I am getting this error:-->
MATCH01 STEP0100 - COMPLETION CODE - SYSTEM=000 USER=0016 REASON=0000000

help need.

Thanks
naren
Back to top
View user's profile Send private message
Phantom
Data Mgmt Moderator
Data Mgmt Moderator


Joined: 07 Jan 2003
Posts: 1056
Topics: 91
Location: The Blue Planet

PostPosted: Tue Jan 24, 2006 5:28 am    Post subject: Reply with quote

Naren,

Two points
1. Whenever you request for an explanation for any error, please post the complete Error message. In case of SORT, you need to provide us the complete SYSOUT message. U0016 is an user abend, which might have resulted due to any typo in any of the control cards.

2. When you post any code, please embed it within the BBtags {code} and {/code} so that it can be read easily.

In this case, post your complete DFSMSG information.

Thanks,

Phantom
Back to top
View user's profile Send private message
naren_ab
Beginner


Joined: 07 Jan 2003
Posts: 32
Topics: 10

PostPosted: Tue Jan 24, 2006 8:51 am    Post subject: Reply with quote

Here it is:-
Code:

1 SYNCSORT FOR Z/OS  1.1CRI  TPF3A  U.S. PATENTS: 4210961, 5117495  (C) 2002 SYNCSORT INC.  DATE=2006/024  TIME=08.35.56
               z/OS   1.4.0
  PRODUCT LICENSED FOR CPU SERIAL NUMBER 4403A, MODEL 2084 308              LICENSE/PRODUCT EXPIRATION DATE: 01 SEP 2006
  DFSPARM :
    OPTION EQUALS
  CTL1CNTL :
    OUTREC FIELDS=(1,300)
  PARMLIST :
  OPTION RESINV=0,ARESINV=0,MSGDDN=DFSMSG,SORTIN=IN1,SORTOUT=T1,SORTDD=CTL1,COPY
  WER428I  CALLER-PROVIDED IDENTIFIER IS "0001"
  WER164B  6,896K BYTES OF VIRTUAL STORAGE AVAILABLE, MAX REQUESTED,
  WER164B     0 BYTES RESERVE REQUESTED, 1,011,952 BYTES USED
  WER146B  20K BYTES OF EMERGENCY SPACE ALLOCATED
  WER108I  IN1      :  RECFM=FB   ; LRECL=   300; BLKSIZE= 27900
  WER237I  OUTREC RECORD LENGTH =   300
  WER110I  T1       :  RECFM=FB   ; LRECL=   300; BLKSIZE= 27900
  WER211B  SYNCSMF  CALLED BY SYNCSORT; RC=0000
  WER449I  SYNCSORT GLOBAL DSM SUBSYSTEM ACTIVE
  WER416B  IN1:       EXCP'S=7,UNIT=3390,DEV=7188,CHP=(2EC02CC2472F3D2D,1),VOL=TST038
  WER416B  T1:        EXCP'S=7,UNIT=3390,DEV=7199,CHP=(2EC02CC2472F3D2D,1),VOL=STOR17
  WER416B  TOTAL OF 14 EXCP'S ISSUED FOR COPYING
  WER054I  RCD IN       8241, OUT       8241
  WER169I  RELEASE 1.1C BATCH 0405 TPF LEVEL 3A
  WER052I  END SYNCSORT - MATCH01,STEP0100,,DIAG=A000,620E,88A6,E0C4,E85A,4C82,8AE8,CC62
1 SYNCSORT FOR Z/OS  1.1CRI  TPF3A  U.S. PATENTS: 4210961, 5117495  (C) 2002 SYNCSORT INC.  DATE=2006/024  TIME=08.35.57
                                        BRANCH BANKING AND TRUST   z/OS   1.4.0
  PRODUCT LICENSED FOR CPU SERIAL NUMBER 4403A, MODEL 2084 308              LICENSE/PRODUCT EXPIRATION DATE: 01 SEP 2006
  DFSPARM :
    OPTION EQUALS
  PARMLIST :
  OPTION RESINV=0,ARESINV=0,MSGDDN=DFSMSG,SORTIN=CON,SORTOUT=OUT,DYNALLOC,CMP=CLC,
  NOVLSHRT,EQUALS
  SORT FIELDS=(00004,0013,CH,A,00019,0013,CH,A)
  MODS E35=(SYNCT$35,4096,,N)
  WER428I  CALLER-PROVIDED IDENTIFIER IS "0002"
  WER164B  23,432K BYTES OF VIRTUAL STORAGE AVAILABLE, MAX REQUESTED,
  WER164B     0 BYTES RESERVE REQUESTED, 1,004K BYTES USED
  WER146B  20K BYTES OF EMERGENCY SPACE ALLOCATED
  WER265A  CON      VSAM CONCATENATED SORTIN NOT ALLOWED
  WER211B  SYNCSMF  CALLED BY SYNCSORT; RC=0000
  WER449I  SYNCSORT GLOBAL DSM SUBSYSTEM ACTIVE
Back to top
View user's profile Send private message
kolusu
Site Admin
Site Admin


Joined: 26 Nov 2002
Posts: 12378
Topics: 75
Location: San Jose

PostPosted: Tue Jan 24, 2006 8:57 am    Post subject: Reply with quote

Quote:

WER265A CON VSAM CONCATENATED SORTIN NOT ALLOWED

naren_ab,

That is the answer for your abend. you CANNOT concatenate vsam clusters. so copy both the clusters to a flat files and then concatenate to get the desired results.

Hope this helps...

Cheers

Kolusu
_________________
Kolusu
www.linkedin.com/in/kolusu
Back to top
View user's profile Send private message Send e-mail Visit poster's website
naren_ab
Beginner


Joined: 07 Jan 2003
Posts: 32
Topics: 10

PostPosted: Tue Jan 24, 2006 10:56 am    Post subject: Reply with quote

That helped, but I am getting:-

CONCAT DS, LRECLS NE OR RECFMS DIFF

thought that I can use ICETOOL for different LRECL.


Thanks
Naren
Back to top
View user's profile Send private message
kolusu
Site Admin
Site Admin


Joined: 26 Nov 2002
Posts: 12378
Topics: 75
Location: San Jose

PostPosted: Tue Jan 24, 2006 11:13 am    Post subject: Reply with quote

Quote:

thought that I can use ICETOOL for different LRECL.

naren_ab,

You CANNOT concatenate FB files with Different LRECL's

Kolusu
_________________
Kolusu
www.linkedin.com/in/kolusu
Back to top
View user's profile Send private message Send e-mail Visit poster's website
naren_ab
Beginner


Joined: 07 Jan 2003
Posts: 32
Topics: 10

PostPosted: Tue Jan 24, 2006 11:18 am    Post subject: Reply with quote

So how else can I solve his problem. The LRECL for fileA is 20 bytes, and second fileB is 300, I need to match on key field.

FileA key is pos=1, length=20
FileB key is pos=13 length=20

and I need output to records from fileB if there is a match.
Help me.

Thanks
Naren
Back to top
View user's profile Send private message
kolusu
Site Admin
Site Admin


Joined: 26 Nov 2002
Posts: 12378
Topics: 75
Location: San Jose

PostPosted: Tue Jan 24, 2006 11:46 am    Post subject: Reply with quote

Try this

Code:

//STEP0100 EXEC PGM=ICETOOL                                     
//TOOLMSG  DD SYSOUT=*                                           
//DFSMSG   DD SYSOUT=*                                           
//IN1      DD DSN=YOUR 300 BYTE LRECL FILE,
//            DISP=SHR
//IN2      DD DSN=YOUR 20 BYTE LRECL FILE,
//            DISP=SHR
//T1       DD DSN=&T1,UNIT=DISK,SPACE=(CYL,(5,5),RLSE),         
//            DISP=(,PASS)                                   
//T2       DD DSN=&T2,UNIT=DISK,SPACE=(CYL,(5,5),RLSE),         
//            DISP=(,PASS)                                   
//CON      DD DSN=&T1,VOL=REF=*.T1,DISP=(OLD,PASS) 
//         DD DSN=&T2,VOL=REF=*.T2,DISP=(OLD,PASS)               
//OUT      DD DSN=Output.file,                         
//            DISP=(NEW,CATLG,DELETE),
//            UNIT=DISK,                 
//            SPACE=(CYL,(1,1),RLSE) 
//TOOLIN   DD *
  COPY FROM(IN1) TO(T1)
  COPY FROM(IN2) USING(CTL2)
  SELECT FROM(CON) TO(OUT) ON(13,20,CH)  ALLDUPS USING(CTL2)
/*
//CTL1CNTL DD *
  OUTREC FIELDS=(C'FILE2',7X,1,20,300:X)
/*
//CTL2CNTL DD *
  OUTFIL FNAMES=OUT,OMIT=(1,5,CH,EQ,C'FILE2')
/*


Hope this helps...

Cheers

Kolusu
_________________
Kolusu
www.linkedin.com/in/kolusu
Back to top
View user's profile Send private message Send e-mail Visit poster's website
naren_ab
Beginner


Joined: 07 Jan 2003
Posts: 32
Topics: 10

PostPosted: Tue Jan 24, 2006 3:29 pm    Post subject: Reply with quote

Excellent,,

Thank you so much.

Naren
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> Utilities All times are GMT - 5 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


MVSFORUMS
Powered by phpBB © 2001, 2005 phpBB Group