Procedure was expanded as instream procedure definition

2.9k views Asked by At

I am a newbie to mainframes and JCl. I am getting the error:

"Procedure was expanded as instream procedure definition"

this is my JCL. I am getting the message IEFC001I . Somone please help me to solve this issue.

1

There are 1 answers

0
Pierre.Vriens On

I think the title of this question should be renamed to What means IEFC001I message "Procedure was expanded as instream procedure definition"? Even though you seem to have forgotten to include your JCL (as per your "This in my JCL"), I don't think there is a need for including such JCL to be able, to answer your question.

When a JCL is submitted, the job that starts running may result in a message like so:

Procedure was expanded as instream procedure definition

The message identifier related to that message is IEFC001I. Note the "I" at the end of this message, which stands for something like "Informational only" (instead of "E" for error, or "A" for Abend"). So this is not to be considered as an error.

What it is actually trying to say, is that your JCL contained the details of some "procedure", which in this case was added to the JCL itself (= instream). An alternative could have been that some JCL jobstep was executing a procedure, with a member that can be found in one of the typical libraries where lots of such procedures are located also, like DSN=SYS1.PROCLIB .

Note: as a variation to using "instream procedures", you may also want to use the "JCLLIB ORDER = ..." statement. That allows you to specify 1 or more DSNs in which you want you r JCL to go look for any proclib members you are using in your JCL. I often use that technique when I'm testing an updated procedure member (before actually installing it in the "official proclib DSNs", and which is used if you do not specify any such JCLLIB ORDER ...