//Stepxx EXEC PROC=name vs. //Stepxx EXEC Proc name



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

//Stepxx EXEC PROC=name vs. //Stepxx EXEC Proc name

Postby 20sam13 » Fri Feb 15, 2013 10:00 pm

I'm pretty sure this is avery easy one to answer, but what is the difference?

Or, is the //Stepxx EXEC PROC=name now a preferred way of doing things?

Is there a benefit to it or any functionality lost by not doing it?


Thanks!
-Scott
20sam13
 
Posts: 17
Joined: Fri Feb 15, 2013 8:44 pm
Has thanked: 0 time
Been thanked: 0 time

Re: //Stepxx EXEC PROC=name vs. //Stepxx EXEC Proc name

Postby Akatsukami » Fri Feb 15, 2013 10:03 pm

There is no difference and, to my knowledge, never has been.
"You have sat too long for any good you have been doing lately ... Depart, I say; and let us have done with you. In the name of God, go!" -- what I say to a junior programmer at least once a day
User avatar
Akatsukami
Global moderator
 
Posts: 1058
Joined: Sat Oct 16, 2010 2:31 am
Location: Bloomington, IL
Has thanked: 6 times
Been thanked: 51 times

Re: //Stepxx EXEC PROC=name vs. //Stepxx EXEC Proc name

Postby Robert Sample » Fri Feb 15, 2013 10:19 pm

It saves 5 keystrokes not to put PROC=. Otherwise, the JCL Reference Manual (link at the top of this page) tells you that the two forms are identical. And the syntax hasn't changed in a LOT of years, so this is nothing new with JCL.
Robert Sample
Global moderator
 
Posts: 3719
Joined: Sat Dec 19, 2009 8:32 pm
Location: Dubuque, Iowa, USA
Has thanked: 1 time
Been thanked: 279 times

Re: //Stepxx EXEC PROC=name vs. //Stepxx EXEC Proc name

Postby halfteck » Mon Feb 18, 2013 2:44 pm

As in all things IBM JCL, to invoke a default you may omit parameters and sub parameters.
With the EXEC statement, the default is PROC= the system assumes you are executing a procedure rather than a program. This is a throwback to the 1960's (and unfortunately i still remember them) where all JCL was invoked using ACTUAL puched cards. Looking at JCL you will see many 00's of lines of code that had to be fed through a card reader each time the job was executed.
This was a nonsense situation so procedures were born, allowing the now 'card images' to be stored on DASD and invoked with //STEP1 EXEC MYPROC1. IBM assummed all users would want this so made PROC= the default
halfteck
 
Posts: 42
Joined: Tue Nov 08, 2011 8:47 pm
Has thanked: 0 time
Been thanked: 0 time

Re: //Stepxx EXEC PROC=name vs. //Stepxx EXEC Proc name

Postby 20sam13 » Tue Feb 19, 2013 10:53 pm

Thanks to everyone for their research, insight and explanations.
20sam13
 
Posts: 17
Joined: Fri Feb 15, 2013 8:44 pm
Has thanked: 0 time
Been thanked: 0 time


Return to JCL

 


  • Related topics
    Replies
    Views
    Last post