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

IDCAMS to DFSORT/ICETOOL


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

Active User


Joined: 06 Jul 2009
Posts: 213
Location: Chennai

PostPosted: Wed Oct 30, 2013 11:28 am
Reply with quote

Hi,

I have a IDCAMS Step, which has following repro function, Could some one pls advice the DFSORT/ICETOOL code to perform the same task.
All the files are VSAM files.

Code:

REPRO IFILE(MAGIN1)   OFILE(MAGOUT01)
REPRO IFILE(MAGIN1)   OFILE(MAGOUT02)
REPRO IFILE(MAGIN1)   OFILE(MAGOUT03)
REPRO IFILE(MAGIN1)   OFILE(MAGOUT04)
REPRO IFILE(MAGIN1)   OFILE(MAGOUT05)
REPRO IFILE(MAGIN1)   OFILE(MAGOUT06)
REPRO IFILE(MAGIN1)   OFILE(MAGOUT07)
REPRO IFILE(MAGIN1)   OFILE(MAGOUT08)
REPRO IFILE(MAGIN1)   OFILE(MAGOUT09)
REPRO IFILE(MAGIN1)   OFILE(MAGOUT10)
REPRO IFILE(MAGIN1)   OFILE(MAGOUT11)
REPRO IFILE(MAGIN1)   OFILE(MAGOUT12)
REPRO IFILE(MAGIN1)   OFILE(MAGOUT13)
REPRO IFILE(MAGIN1)   OFILE(MAGOUT14)
REPRO IFILE(MAGIN1)   OFILE(MAGOUT15)
REPRO IFILE(MAGIN1)   OFILE(MAGOUT16)


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

Active User


Joined: 06 Jul 2009
Posts: 213
Location: Chennai

PostPosted: Wed Oct 30, 2013 11:50 am
Reply with quote

Hi,

Got the solution, But please advice will this be better than idcams ?

Code:

//CPYJK EXEC PGM=ICETOOL         
//TOOLMSG DD SYSOUT=*             
//SYSOUT DD SYSOUT=*             
//DFSMSG DD SYSOUT=*   
//MAGIN1 DD DSN=DATASTNAME,DISP=SHR
//MAGOUT01 DD DSN=....
...
..
..
//MAGOUT16 DD DSN= ...         
//TOOLIN DD *
 COPY FROM(MAGIN1) TO(MAGOUT01)
 COPY FROM(MAGIN1) TO(MAGOUT02)
..
..
..
 COPY FROM(MAGIN1) TO(MAGOUT16)
/*
//
Back to top
View user's profile Send private message
expat

Global Moderator


Joined: 14 Mar 2007
Posts: 8797
Location: Welsh Wales

PostPosted: Wed Oct 30, 2013 12:34 pm
Reply with quote

What were the results when you compared the elapsed time and resource consumption between the two ?
Back to top
View user's profile Send private message
Bill Woodger

Moderator Emeritus


Joined: 09 Mar 2011
Posts: 7309
Location: Inside the Matrix

PostPosted: Wed Oct 30, 2013 2:14 pm
Reply with quote

You can specify multiple output files for COPY, so you won't need to read the input file so many times. Note, you can't do them all in one COPY.

With plain SORT and OPTION COPY you can specify multiple OUTFIL beyond the limit of ICETOOL's COPY. So you only read the input once. Is it a single-record file? If so, are you going to notice much difference anyway?

With "many" records on the input, I'd predict SORT (one pass), ICETOOL (number of passes divided by whatever), IDCAMS (one pass per output file).
Back to top
View user's profile Send private message
magesh23586

Active User


Joined: 06 Jul 2009
Posts: 213
Location: Chennai

PostPosted: Thu Oct 31, 2013 11:12 am
Reply with quote

Thanks Bill Woodger, I am changing the code will let you know the result, btw will you please tell me what is mean by 'pass' in your message ?
Back to top
View user's profile Send private message
Bill Woodger

Moderator Emeritus


Joined: 09 Mar 2011
Posts: 7309
Location: Inside the Matrix

PostPosted: Thu Oct 31, 2013 1:09 pm
Reply with quote

Pass = reading a file entirely.
Back to top
View user's profile Send private message
Skolusu

Senior Member


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

PostPosted: Mon Nov 04, 2013 11:39 pm
Reply with quote

Use the following control cards

Code:

//TOOLIN   DD *                 
  COPY FROM(MAGIN1) USING(CTL1) 
//CTL1CNTL DD *                 
  OUTFIL FNAMES=MAGOUT01         
  OUTFIL FNAMES=MAGOUT02         
  OUTFIL FNAMES=MAGOUT03         
  OUTFIL FNAMES=MAGOUT04         
  OUTFIL FNAMES=MAGOUT05         
  OUTFIL FNAMES=MAGOUT06         
  OUTFIL FNAMES=MAGOUT07         
  OUTFIL FNAMES=MAGOUT08         
  OUTFIL FNAMES=MAGOUT09         
  OUTFIL FNAMES=MAGOUT10         
  OUTFIL FNAMES=MAGOUT11         
  OUTFIL FNAMES=MAGOUT12         
  OUTFIL FNAMES=MAGOUT13         
  OUTFIL FNAMES=MAGOUT14         
  OUTFIL FNAMES=MAGOUT15         
  OUTFIL FNAMES=MAGOUT16         
//*                             
Back to top
View user's profile Send private message
magesh23586

Active User


Joined: 06 Jul 2009
Posts: 213
Location: Chennai

PostPosted: Tue Nov 05, 2013 11:27 pm
Reply with quote

Thanks SKolusu,

After these 16 copies I have some other 15 files to be copied which I missed to mention which is having different inputs.

MAGIN2 to MAGOUT17
MAGIN3 to MAGOUT18
..
..

MAGIN15 to MAGOUT30

May I use code like below or any other idea ?
Code:

//TOOLIN   DD *                 
  COPY FROM(MAGIN1) using(CTL1)
  COPY FROM(MAGIN2) TO (MAGOUT17)
  COPY FROM(MAGIN3) TO (MAGOUT18)
  COPY FROM(MAGIN4) TO (MAGOUT19)
...
...
  COPY FROM(MAGIN15) TO(MAGOUT30)
//CTL1CNTL DD *                 
  OUTFIL FNAMES=MAGOUT01         
  OUTFIL FNAMES=MAGOUT02         
  OUTFIL FNAMES=MAGOUT03         
  OUTFIL FNAMES=MAGOUT04         
  OUTFIL FNAMES=MAGOUT05         
  OUTFIL FNAMES=MAGOUT06         
  OUTFIL FNAMES=MAGOUT07         
  OUTFIL FNAMES=MAGOUT08         
  OUTFIL FNAMES=MAGOUT09         
  OUTFIL FNAMES=MAGOUT10         
  OUTFIL FNAMES=MAGOUT11         
  OUTFIL FNAMES=MAGOUT12         
  OUTFIL FNAMES=MAGOUT13         
  OUTFIL FNAMES=MAGOUT14         
  OUTFIL FNAMES=MAGOUT15         
  OUTFIL FNAMES=MAGOUT16         
//*     


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

Senior Member


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

PostPosted: Wed Nov 06, 2013 12:13 am
Reply with quote

magesh23586,

Yes you can. How about you doing a test and letting us know instead of waiting for us to respond?
Back to top
View user's profile Send private message
magesh23586

Active User


Joined: 06 Jul 2009
Posts: 213
Location: Chennai

PostPosted: Wed Nov 06, 2013 12:32 am
Reply with quote

Sorry I think I miscommunicated I have tested with sample and just asked if there are some other way, totally 83 files involved, Full level of code change will take some time. that why thought of confirming before I put such a effort.

Any way thank for your kind advice
Back to top
View user's profile Send private message
Skolusu

Senior Member


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

PostPosted: Wed Nov 06, 2013 1:12 am
Reply with quote

magesh23586 wrote:
Sorry I think I miscommunicated I have tested with sample and just asked if there are some other way, totally 83 files involved, Full level of code change will take some time. that why thought of confirming before I put such a effort.

Any way thank for your kind advice


Wow I did not know that we are supposed to bend our back to answer your queries right away and do YOUR work. Good Luck from now on
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 Modifying Date Format Using DFSORT DFSORT/ICETOOL 9
No new posts Replace Multiple Field values to Othe... DFSORT/ICETOOL 12
No new posts Calling DFSORT from Cobol, using OUTF... DFSORT/ICETOOL 5
No new posts DFsort help with SUM() DFSORT/ICETOOL 12
No new posts Shift left VB record without x00 endi... DFSORT/ICETOOL 11
Search our Forums:

Back to Top