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

Merging file data using ICETOOL


IBM Mainframe Forums -> JCL & VSAM
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
kishpra

New User


Joined: 24 May 2010
Posts: 92
Location: Pune

PostPosted: Tue Aug 04, 2015 2:15 pm
Reply with quote

Hi All,

I have used ICETOOL to merge the files data.

Code:
S29TL   EXEC PGM=ICETOOL,COND=(8,LE)
TOOLMSG   DD  SYSOUT=*
DFSMSG    DD  SYSOUT=*

IN1       DD  DSN=WLB.TEST.EJR.AIH.OUTPUT.O3,DISP=SHR
IN2       DD  DSN=WLB.TEST.ACQ.AIH.OUTPUT.O3,DISP=SHR
IN3       DD  DSN=WLB.TEST.SAC.AIH.OUTPUT.O3,DISP=SHR
OUT       DD  DSN=WLB.TEST.OUTPUT,DISP=(MOD,CATLG,DELETE),

TOOLIN    DD  *
COPY FROM(IN1) TO(OUT) USING(CTL1)
COPY FROM(IN2) TO(OUT) USING(CTL1)
COPY FROM(IN3) TO(OUT) USING(CTL1)

CTL1CNTL  DD  *
OPTION COPY
/*



The output file has the below data with HEX ON:

Code:
wase.20150802.dat|20110802|3596808
AA888A84FFFFFFFF488A4FFFFFFFF4FFFFFFF4
3633125B20150802B413F20150802F35968080
--------------------------------------
watt.20150802.dat|20110802|2903    ,
A8A8AA4FFFFFFFF488A4FFFFFFFF4FFFF44440
346133B20150802B413F20150802F290300000
--------------------------------------
wsac.20150802.dat|20110802|5898213
AA88A884FFFFFFFF488A4FFFFFFFF4FFFFFFF4
3633213B20150802B413F20150802F58982130


The second row has the pipe delimiter which is one space to the left as compared to first and third record. So the second record is getting some hex '00' value at last.

Please elt me know how to squeeze the data or to have X(40) in the second record at last.

Thank you.

Code'd
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: Tue Aug 04, 2015 3:21 pm
Reply with quote

In a SORT/ICETOOL context, MERGE has a specific meaning, and it is not what you think it is.

You want to concatenate your data. You have chosen a strange way. A simple SORT with a COPY operation will do you, with the three datasets concatenated on the SORTIN DD... if, that is, the datasets are the same RECFM (yes, they are) and LRECL (unclear).

What is the LRECL of your three input datasets and your output dataset?
Back to top
View user's profile Send private message
kishpra

New User


Joined: 24 May 2010
Posts: 92
Location: Pune

PostPosted: Tue Aug 04, 2015 3:38 pm
Reply with quote

LRECL for firs and second dataset is 38 and second is 37.
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: Tue Aug 04, 2015 3:58 pm
Reply with quote

Code:
TOOLIN    DD  *
COPY FROM(IN1) TO(OUT)
COPY FROM(IN2) TO(OUT) USING(CTL1)
COPY FROM(IN3) TO(OUT)

CTL1CNTL  DD  *
 INREC OVERLAY=(38:X)


You don't need a USING if you are doing nothing other than what the ICETOOL operator is doing.

For your short records, you need to make them longer. So you use a USING and in that USING set column 38 to blank.
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 -> JCL & VSAM

 


Similar Topics
Topic Forum Replies
No new posts FTP VB File from Mainframe retaining ... JCL & VSAM 1
No new posts Store the data for fixed length COBOL Programming 1
No new posts Extract the file name from another fi... DFSORT/ICETOOL 6
No new posts How to split large record length file... DFSORT/ICETOOL 10
No new posts Extracting Variable decimal numbers f... DFSORT/ICETOOL 17
Search our Forums:

Back to Top