execute proc to create PDS



JES, JES2, JCL utilities, IDCAMS, Compile & Run JCLs, PROCs etc...

Re: execute proc to create PDS

Postby dn2012 » Tue Apr 17, 2012 3:45 am

Dick

You mentioned that imbed SYSIN data in a PROCedure. You also suggested to place this in a member in some control library (often named hlq.mlq.CTLLIB or something similar according to hyour syste's standards. SYSIN data CANNOT contain &symbol to be resolved at runtime.


Did you mean to place step2 in control library or something similar?

If yes, how will I call in this JCL. could you give some example?

thanks
dn2012
 
Posts: 114
Joined: Thu Feb 16, 2012 6:10 am
Has thanked: 0 time
Been thanked: 0 time

Re: execute proc to create PDS

Postby dick scherrer » Tue Apr 17, 2012 8:17 am

Hello,

Ask your co-workers or manager or technical support person how this kind of data is stored on your system for Prouction jobs. Often there is a .TEST. and a .PROD. control library (so that testing new sysin data will not impact Production).

Did you mean to place step2 in control library or something similar?
No, all of the steps should be in one PROCedure. Each set of the "sysin" data should be placed in separate members and named in the PROC (i.e. //SYSIN DD DSN=whatever.TEST.CTLLIB(mbrname),DISP=SHR).

Keep in mind that you need to resolve any symbolic parameters as they cannot be resolved as you have attempted. Again, someone has probably already addressed this, so i'd suggest you use whatever method is already in nuse.
Hope this helps,
d.sch.
User avatar
dick scherrer
Global moderator
 
Posts: 6268
Joined: Sat Jun 09, 2007 8:58 am
Has thanked: 3 times
Been thanked: 93 times

Re: execute proc to create PDS

Postby dn2012 » Tue Apr 17, 2012 8:18 pm

Dick,

You said all of the steps should be in one PROCedure. Each set of the "sysin" data should be placed in separate members and named in the PROC (i.e. //SYSIN DD DSN=whatever.TEST.CTLLIB(mbrname),DISP=SHR).

Here what I understand:
I will use all steps in one PROCedure as below:
//EXTPROC PROC
//STEP1 EXEC PGM=IEFBR14
//SQADB512 DD DSN=&DSNAME,DISP=(NEW,CATLG,DELETE),
// SPACE=(TRK,(5,3,1)),UNIT=SYSDA,
// DCB=(RECFM=FB,LRECL=80,BLKSIZE=800,DSORG=PO)
//STEP2 EXEC PGM=IDCAMS,REGION=512K
//SYSPRINT DD SYSOUT=*
//SYSIN DD DSN=whatever.TEST.CTLLIB(mbrname),DISP=SHR
//*
//FINAL EXEC EXTPROC,DSNAME=TSSDN.DEMO.TEMP02,DEFGDG=TSSDN.GDBD.TEMP02
//*


And I should values in the member
whatever.TEST.CTLLIB(mbrname)

//SYSIN DD *
DEFINE GDG( -
NAME(&DEFGDG)-
LIMIT(7) NOEMPTY SCRATCH)
//*
dn2012
 
Posts: 114
Joined: Thu Feb 16, 2012 6:10 am
Has thanked: 0 time
Been thanked: 0 time

Re: execute proc to create PDS

Postby dn2012 » Tue Apr 17, 2012 8:26 pm

we do not have any standard.
And this is for test environment for my understanding.

My lead used the term override.
dn2012
 
Posts: 114
Joined: Thu Feb 16, 2012 6:10 am
Has thanked: 0 time
Been thanked: 0 time

Re: execute proc to create PDS

Postby Monitor » Tue Apr 17, 2012 10:27 pm

How about following the link I provided earlier, to IBM "free-of-charge-training". Download the JCL-course an look in JCLB, Unit4, and you find what override is about.
I recommend you to read all units, not just a single one.
Start from the beginning!
Monitor
 
Posts: 98
Joined: Wed Jan 18, 2012 8:59 pm
Has thanked: 0 time
Been thanked: 7 times

Re: execute proc to create PDS

Postby steve-myers » Tue Apr 17, 2012 10:35 pm

Monitor, dn2012 appears unwilling to learn anything
steve-myers
Global moderator
 
Posts: 2105
Joined: Thu Jun 03, 2010 6:21 pm
Has thanked: 4 times
Been thanked: 243 times

Re: execute proc to create PDS

Postby NicC » Tue Apr 17, 2012 10:52 pm

And so I shall lock the topic.
The problem I have is that people can explain things quickly but I can only comprehend slowly.
Regards
Nic
NicC
Global moderator
 
Posts: 3025
Joined: Sun Jul 04, 2010 12:13 am
Location: Pushing up the daisies (almost)
Has thanked: 4 times
Been thanked: 136 times

Re: execute proc to create PDS

Postby dick scherrer » Tue Apr 17, 2012 11:11 pm

Hello,

And I should values in the member
whatever.TEST.CTLLIB(mbrname)

//SYSIN DD *
DEFINE GDG( -
NAME(&DEFGDG)-
LIMIT(7) NOEMPTY SCRATCH)
//*
The &DEFGDG will not work here. You need to resolve the value some way and then place it in the member.

Monitor, dn2012 appears unwilling to learn anything
I believe there is quite a difference between being unwilling to learn and struggling thru learning JCL / PROCedures without proper training.

Also, this IS the student / beginner forum. . .

I've unlocked this topic - if anyone sees this as a real issue, please let me know :)

d
User avatar
dick scherrer
Global moderator
 
Posts: 6268
Joined: Sat Jun 09, 2007 8:58 am
Has thanked: 3 times
Been thanked: 93 times

Re: execute proc to create PDS

Postby steve-myers » Wed Apr 18, 2012 12:14 am

dick scherrer wrote:Hello,...

And I should values in the member
whatever.TEST.CTLLIB(mbrname)

//SYSIN DD *
DEFINE GDG( -
NAME(&DEFGDG)-
LIMIT(7) NOEMPTY SCRATCH)
//*
The &DEFGDG will not work here. You need to resolve the value some way and then place it in the member. ...
d
I think &DEFGDG will not work was mentioned at least 3 times before this in the topic. Either dn2012 did not read this, or it was beyond the capacity of his brain to understand it.
steve-myers
Global moderator
 
Posts: 2105
Joined: Thu Jun 03, 2010 6:21 pm
Has thanked: 4 times
Been thanked: 243 times

Re: execute proc to create PDS

Postby dick scherrer » Wed Apr 18, 2012 12:43 am

Hi Steve,

I suspect it was read (probably each time posted) but not really understood. Seeing a symbolic parameter in the "jcl" one place or another does not look wrong. Many new people are taught (or somehow "learn") that everything from the JOB statement thru the end of the submission is all "JCL".

As in "I need a JCL that will . . .". I cringe when i see this at the beginning of a topic. . .

d
User avatar
dick scherrer
Global moderator
 
Posts: 6268
Joined: Sat Jun 09, 2007 8:58 am
Has thanked: 3 times
Been thanked: 93 times

Previous

Return to JCL

 


  • Related topics
    Replies
    Views
    Last post