what is the purpose of proclib dd statement



IBM's hierarchical database management system with a Database Manager (IMS DB) and a Transaction Manager(IMS DC)

what is the purpose of proclib dd statement

Postby Ajay Baghel » Sun Aug 17, 2008 9:06 pm

What is the purpose of PROCLIB dd statement in the below jcl

// EXEC PGM=DFSRRC00,PARM=......
.
.
.
//PROCLIB DD DSN=PROCLIB.DATASET,DISP=SHR
.
.

Thanks,
Ajay
Ajay Baghel
 
Posts: 4
Joined: Sun Aug 17, 2008 8:56 pm
Has thanked: 0 time
Been thanked: 0 time

Re: what is the use of proclib dd statement

Postby dick scherrer » Sun Aug 17, 2008 11:06 pm

Hello Ajay and welcome to this forum,

As used in your example, PROCLIB is just another DD statement for that step.
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: what is the purpose of proclib dd statement

Postby Ajay Baghel » Mon Aug 18, 2008 1:14 pm

Thanks Dick for your prompt reply.

I understand JCLLIB is used to locate the pds from which to pick the catalogued procedures and it is coded before the EXEC statements. But does PROCLIB dd statement do a similar task? If yes, why it is coded within the step that invokes DFSRRC00?

I am not able to understand what is PROCLIB dd statement doing in the step executing DFSRRC00. If it is a ddname specific to the DFSRRC00 utility, then i would like to know what its significance is for DFSRRC00.

Is its purpose to indicate procedure library? If yes, then why it is coded within step and how it is doing its job?

Please guide.

Thanks,
Ajay
Ajay Baghel
 
Posts: 4
Joined: Sun Aug 17, 2008 8:56 pm
Has thanked: 0 time
Been thanked: 0 time

Re: what is the purpose of proclib dd statement

Postby dick scherrer » Mon Aug 18, 2008 9:54 pm

Hello,

But does PROCLIB dd statement do a similar task?
No, however there is a PROCLIB parameter on the /*JOBPARM (if one is used).
http://publibz.boulder.ibm.com/cgi-bin/ ... 650/27.3.6?

I am not able to understand what is PROCLIB dd statement doing in the step executing DFSRRC00.
Pretend the ddname is MYPROCS. You would understand that the program will open MYPROCS and read or write some data. Don't let the ddname cause confusion - it is just a ddname.
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: what is the purpose of proclib dd statement

Postby Ajay Baghel » Tue Aug 19, 2008 1:31 pm

But Dick, this dataset PROCLIB.DATASET is a PDS Dataset and it contains members having jobs as well.

I need to research some more on DFSRRC00 to find what it does with PROCLIB.

Will get back if i find something ... hopefully

Thanks Again!!
Ajay
Ajay Baghel
 
Posts: 4
Joined: Sun Aug 17, 2008 8:56 pm
Has thanked: 0 time
Been thanked: 0 time

Re: what is the purpose of proclib dd statement

Postby dick scherrer » Wed Aug 20, 2008 1:58 am

Hello,

this dataset PROCLIB.DATASET is a PDS Dataset and it contains members having jobs as well


Why does this cause concern?

The PROCLIB dataset should contain all IMS-generated cataloged procedures, jobs, and control statements. If DFSRRC00 needs something from that dataset, it has it available rather than dong some kind of dynamic allocation.
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: what is the purpose of proclib dd statement

Postby GuyC » Tue Aug 11, 2009 3:30 pm

//PROCLIB DD disp=shr,dsn=...
Is an old and obsolete way of overruling the proclib list.

The new way is /*JOBPARM or //myprocs JCLLIB ORDER =(...,...)

But in a lot of old JCLs this was coded. Normally this stmt would give an error, but it is possible to make jes just to ignore the stmt without error.
If it is still in there it was just lazyness during migration.
I can explain it to you, but i can not understand it for you.
GuyC
 
Posts: 315
Joined: Tue Aug 11, 2009 3:23 pm
Has thanked: 1 time
Been thanked: 4 times

Re: what is the purpose of proclib dd statement

Postby dick scherrer » Tue Aug 11, 2009 11:19 pm

Hello,

If it is still in there it was just lazyness during migration.
Or it is describes a dataset that is used by the step. . .

It is not necessarily wrong or "left behind" due to laziness.
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: what is the purpose of proclib dd statement

Postby GuyC » Wed Aug 12, 2009 1:04 pm

True : not necessary. you might find some really exotic program that scans or changes members in a complete PDS

But I'd like to see a batch program that has a PDS in the DD-list and accesses members without "doing some kind of dynamic allocation"
I can explain it to you, but i can not understand it for you.
GuyC
 
Posts: 315
Joined: Tue Aug 11, 2009 3:23 pm
Has thanked: 1 time
Been thanked: 4 times

Re: what is the purpose of proclib dd statement

Postby dick scherrer » Thu Aug 13, 2009 1:34 am

Hello,

There are many systems that use a member or a concatenation of members as a single input to an application program. These use the jcl as input, modify it (usually adding/changing some instream data as well), and "write" it to the internal reader.

Also, most systems i've supported have "sort control" statements in one or more PDS that is named as a DD in the job.
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

Next

Return to IMS DB/DC

 


  • Related topics
    Replies
    Views
    Last post