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

parm values in IEFBR14


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

New User


Joined: 05 Jul 2013
Posts: 34
Location: India

PostPosted: Mon Aug 26, 2013 10:29 am
Reply with quote

Hi we have different files used in our proc, to differentiate we used overides for the file, high level qualifiers.

However there is a single IEFBR14 step as first step of proc which has parm of override fields

Code:
//BR14 EXEC PGM=IEFBR14,PARM='&CV&EHLQ'     
//* 



me and my teamies are clueless on what this particular step does.
Back to top
View user's profile Send private message
prino

Senior Member


Joined: 07 Feb 2009
Posts: 1285
Location: Vilnius, Lithuania

PostPosted: Mon Aug 26, 2013 11:01 am
Reply with quote

It makes sure that the parms are used in the proc, to prevent JCL errors, and it sets an RC=0 that may be needed to enable condition code checking on the first real step.
Back to top
View user's profile Send private message
bvarun.

New User


Joined: 05 Jul 2013
Posts: 34
Location: India

PostPosted: Mon Aug 26, 2013 11:09 am
Reply with quote

wow I learnt new stuff in jcl today,, thanks prino icon_smile.gif
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: Mon Aug 26, 2013 1:35 pm
Reply with quote

Well, I've either learned something, misunderstood something, or fallen for somehting :-)
Back to top
View user's profile Send private message
bvarun.

New User


Joined: 05 Jul 2013
Posts: 34
Location: India

PostPosted: Mon Aug 26, 2013 2:07 pm
Reply with quote

Bill,

i am pondering What could be misunderstood something, or fallen for somehting here ?

Would you please share if you dont mind.
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: Mon Aug 26, 2013 3:17 pm
Reply with quote

Why would the first step need to check an RC?

What would the importance be of "making sure" that the parms are used?
Back to top
View user's profile Send private message
Garry Carroll

Senior Member


Joined: 08 May 2006
Posts: 1175
Location: Dublin, Ireland

PostPosted: Mon Aug 26, 2013 3:18 pm
Reply with quote

prino wrote:
It makes sure that the parms are used in the proc, to prevent JCL errors, and it sets an RC=0 that may be needed to enable condition code checking on the first real step.


I don't see how it makes sure that parms are used in the proc ? If they're there and unresolved you still get JCL error.

Garry.
Back to top
View user's profile Send private message
prino

Senior Member


Joined: 07 Feb 2009
Posts: 1285
Location: Vilnius, Lithuania

PostPosted: Mon Aug 26, 2013 3:50 pm
Reply with quote

Bill Woodger wrote:
Why would the first step need to check an RC?

What would the importance be of "making sure" that the parms are used?


In order to bypass it with a stepxxx.cond override. If there is no condition code, you cannot bypass the first step of a proc.

Suppose you've got one dataset using these symbolics and it's removed from the possibly long proc. By having the symbolics in the IEFBR14 parameter, the proc will not give a JCL error, because the symbolics are still used.
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


Joined: 23 Nov 2006
Posts: 19244
Location: Inside the Matrix

PostPosted: Mon Aug 26, 2013 6:56 pm
Reply with quote

Hello,

Showing only this BR14 step does not provide the info needed (at least for me) to answer.

If you post the PROC, we will probably be able to provide different replies.
Back to top
View user's profile Send private message
bvarun.

New User


Joined: 05 Jul 2013
Posts: 34
Location: India

PostPosted: Tue Aug 27, 2013 12:08 pm
Reply with quote

prino is right..


It makes sure that the parms are used in the proc.

For example: if some symbolic overide is used in job, but commented in proc. It will give you jcl syntax error. if we use BR14 step with overrides in parm in proc as a first step, whether overrides are used or not in the proc later. it will not give jcl syntax error.

It will be helpful for DEV testing. i tried it in my shop
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


Joined: 23 Nov 2006
Posts: 19244
Location: Inside the Matrix

PostPosted: Tue Aug 27, 2013 8:11 pm
Reply with quote

Hello,

Quote:
It makes sure that the parms are used in the proc.
The way this is often addressed is by placing initial/default values on the PROC statement. I see no reason to have an extra step.

Maybe i am missing something?
Back to top
View user's profile Send private message
prino

Senior Member


Joined: 07 Feb 2009
Posts: 1285
Location: Vilnius, Lithuania

PostPosted: Tue Aug 27, 2013 8:24 pm
Reply with quote

dick scherrer wrote:
Hello,

Quote:
It makes sure that the parms are used in the proc.
The way this is often addressed is by placing initial/default values on the PROC statement. I see no reason to have an extra step.

Maybe i am missing something?

Yes you are. If the use a procedural parameter is removed from a proc by commenting out the JCL statement on which it occurs, without it also being removed from the proc itself, you will get a JCL error for an unused symbol. The dummy parm for IEFBR14 will prevent this from happening.
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


Joined: 23 Nov 2006
Posts: 19244
Location: Inside the Matrix

PostPosted: Tue Aug 27, 2013 9:12 pm
Reply with quote

Ahh - now i see what you are getting at icon_smile.gif

I just haven't had that "opportunity" yet . . . icon_wink.gif

Thanks,

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 27, 2013 9:49 pm
Reply with quote

It was "learned something". Thanks prino. Probably means I've never tried to bounce the first step in a PROC, but now when I try and it doesn't work, I'll remember :-)

I think the "JCL Boys" usually tridy-up symbols which are no longer used. I guess, but if I see it somewhere, I'll now know (and not bust someone for it, and afterwards find out what it does....).
Back to top
View user's profile Send private message
Nic Clouston

Global Moderator


Joined: 10 May 2007
Posts: 2455
Location: Hampshire, UK

PostPosted: Tue Sep 03, 2013 12:11 am
Reply with quote

Would be nice to have the step commented though - but then we would not come across these little gems. OTH, if the symbolics become unused then they should be removed otherwise it is an incomplete change.
Back to top
View user's profile Send private message
prino

Senior Member


Joined: 07 Feb 2009
Posts: 1285
Location: Vilnius, Lithuania

PostPosted: Tue Sep 03, 2013 12:40 am
Reply with quote

Nic Clouston wrote:
Would be nice to have the step commented though - but then we would not come across these little gems. OTH, if the symbolics become unused then they should be removed otherwise it is an incomplete change.

Yes, but if you need to come in at 02:42 and use a temporary copy of the procedure, not having to check if a variable is used does have its advantages.
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 Converting ASCII values to COMP-3 (ZD... JCL & VSAM 2
No new posts Generate output lines (SYSIN card for... DFSORT/ICETOOL 4
No new posts Conditional replace values in output ... DFSORT/ICETOOL 3
No new posts Join files where value in one is betw... DFSORT/ICETOOL 6
No new posts Passing parm from JCL to Assembler, b... PL/I & Assembler 2
Search our Forums:

Back to Top