Caveat: insert daily digestion delay here... Charles: aside from the other information provided, I note the text below from the JCL Ref manual:
Location in the JCL: A JCLLIB statement: v Must appear after the JOB statement and before the first EXEC statement in the job. v Must appear before any INCLUDE statement. v Must not appear within an INCLUDE group. Your original problem failed the 1st item as following an EXEC in the *job* since the START command ends up equivalent to an EXEC PROC= and your JCLLIB statement appears after the // PROC statement. As mentioned by someone (Lizette, I think?), you can't mix the PROCJOBs with PROCLIBs as they are two different DDs in MSTRJCL. Hence the MisPlaced JOB & JCLLIB statement errors 'cause PROCLIBs must start [1] with an PROC statement. The PROCJOBs allow you to have STCs that use the larger gamut of JCL; literally 'started jobs'. In fact, I have many that use JCLLIB to pre-pend my libraries before the standard, proc, search order specifically to use environment specific procs of the same name in different libraries. [2] [1] ok, don't know for certain. There may be some exception statements that I didn't bother to look up. [2] One even points to the standard ProcLib so that it can have the same name as the Proc. It, essentially, pre-pends OUTPUT JESDS=ALL,OUTDISP=(WRITE,HOLD) & MSGCLASS=R to the original proc to alter the default STC output disposition. --------> signature = 6 lines follows <-------- Neil Duffee, Joe Sysprog, uOttawa, Ottawa, Ont, Canada telephone:1 613 562 5800 x4585 fax:1 613 562 5161 mailto:NDuffee of uOttawa.ca http:/ /aix1.uOttawa.ca/ ~nduffee "How *do* you plan for something like that?" Guardian Bob, Reboot "For every action, there is an equal and opposite criticism." "Systems Programming: Guilty, until proven innocent" John Norgauer 2004 -----Original Message----- From: Charles Mills [mailto:[email protected]] Sent: December 17, 2014 20:05 Subject: JCLLIB in started proc? I just added a JCLLIB statement to a cataloged procedure that I start with a Start command. I am getting IEFC019I MISPLACED JCLLIB STATEMENT. Should I infer that JCLLIB is not allowed in a started PROC, or should I be looking for a fat-finger coding error? (I want the JCLLIB for INCLUDE, not EXEC PROC=.) I RTFM but don't see anything explicit. It does refer to "in a job" at several points. Is JCLLIB allowed in a started PROC if the PROC has a JOB statement? I know I can do that but I've never done it. Where is that documented? ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
