Can I load several DB2 Tables using LISTDEF and a TEMPLATE? If so, can I see some examples(s)?

Hi all,
I have unload (using LISTDEF & TEMPLATing) a DB2 database of several tablespace/tables and associated SYSPUNCH cards. I will like to use LISTDEF and a Template to load the tables data into my test environment.
How can I do this? Is there other ways to do this? Any example(s) to guide me how to code the JCL, etc etc

I will appreciate any and all suggestions?

Thanks
EnyinnayaAsked:
Who is Participating?
 
momi_sabagCommented:
sure you can do that
you just use all your syspunch files as input
you can do something like this

//SYSIN DD *
//          DD DISP=SHR,DSN=SYSPUNCH1
//          DD DISP=SHR,DSN=SYSPUNCH2
//          DD DISP=SHR,DSN=SYSPUNCH3
...
0
 
EnyinnayaAuthor Commented:
momi_sabag,

Thanks for yur respons. I have not done this before so a little more detailed example will be heavenly. For example, how to code the template the LOAD process uses, how to code the LISTDEFDD command for the LOAD and any other pointers that you think I should be aware of.

If I could get IEBGENER or any of the DFHSMS utilities like IEBUPTE or IEBCOPY to copy all the SYSPUNCH into a single file, I knw of a way to do what I need to do.

Any comments and recommendation will be welcomed.

Thanks
0
 
EnyinnayaAuthor Commented:
moni_sabq,
 
Let me clarify what I am trying to accomplish.
Your suggestion willl work but I don't want to have to hard code tablespace name every so often. I can create a SYSPUNCH dataset using the template whether it is a GDG based dataset or a simple sequential file. I can dynamically create a file (lets call it FILEA) containing all the SYSPUNCH file names that I generated from doing an UNLOAD. THe whole idea is not to have to hard code tablespace name each and everytime a tablespace is added or dropped. I simply read my SYSTABLESPACE, extract the tablespace I am after, build according to the SYSPUNCH naming convention used during UNLOAD, feed
this FILEA to SYSUT1 such as the following:

//S01OF99 EXEC PGM=IEBGENER
//SYSPRINT DD SYSOUT=*
//SYSIN DD DUMMY
//SYSUT1 DD DSN=FILEA,DISP=OLD
//SYSUT2 DD DSN=SOMENAME,DISP=(,CATLG)

I want IEBGENER to read FILEA and copy the actual SYSPUNCH contoll statements of each name registered in FILEA to to 1 single file named in SYSUT2. In order words merge all files. The contents of FILEA is just a list of files to copy into SYSUT2 and the structure will look like this:

FILEA:

DD DISP=SHR,DSN=GO1.FDEV1.OSCR.D1UNL.GO1SCAM1.PUNCH
DD DISP=SHR,DSN=GO1.FDEV1.OSCR.D1UNL.GO1SCJR1.PUNCH
DD DISP=SHR,DSN=GO1.FDEV1.OSCR.D1UNL.GO1SDNF1.PUNCH
DD DISP=SHR,DSN=GO1.FDEV1.OSCR.D1UNL.GO1SGAJ1.PUNCH
DD DISP=SHR,DSN=GO1.FDEV1.OSCR.D1UNL.GO1SGCT1.PUNCH
DD DISP=SHR,DSN=GO1.FDEV1.OSCR.D1UNL.GO1SMSR1.PUNCH
DD DISP=SHR,DSN=GO1.FDEV1.OSCR.D1UNL.GO1SNAK1.PUNCH
DD DISP=SHR,DSN=GO1.FDEV1.OSCR.D1UNL.GO1SOFC1.PUNCH
DD DISP=SHR,DSN=GO1.FDEV1.OSCR.D1UNL.GO1SGO11.PUNCH

When I tried this method, IEBGENER errors-out with this message:

DATA SET UTILITY - GENERATE      
DD DISP=SHR,DSN=GO1.FDEV1.OSCR.D1UNL.GO1SCAM1.PUNCH
IEB336I       INVALID COMMAND IN COL. 07      
DD DISP=SHR,DSN=GO1.FDEV1.OSCR.D1UNL.GO1SCJR1.PUNCH
IEB336I       INVALID COMMAND IN COL. 07      
DD DISP=SHR,DSN=GO1.FDEV1.OSCR.D1UNL.GO1SDNF1.PUNCH
IEB336I       INVALID COMMAND IN COL. 07
DD DISP=SHR,DSN=GO1.FDEV1.OSCR.D1UNL.GO1SGAJ1.PUNCH

What do I need to correct the error and make this work.
0
Cloud Class® Course: Ruby Fundamentals

This course will introduce you to Ruby, as well as teach you about classes, methods, variables, data structures, loops, enumerable methods, and finishing touches.

 
momi_sabagCommented:
it seems that you can't use a template for sysin so you will have to either copy all the syspunch files into a single file, or concatenate them one to the other like i wrote in the previous comment
0
 
momi_sabagCommented:
when you do the unload, don't use a gdg file
have a single syspunch file and your life will be simpler
0
 
EnyinnayaAuthor Commented:
At tis time, this appears to be way to go
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.