If you want to INCLUDE a member, this is like a PROC, so you need to have SETS in a system-defined proclib or you have to add something like
//    JCLLIB ORDER=PHS.PDS.JCL840

and I would probably move the INCLUDE up to where you explain what is in the SETS member, to make it clearer.

Billy

Thank you and best regards,
Billy Ashton


------ Original Message ------
From "Phil Smith III" <[email protected]>
To [email protected]
Date 8/31/2023 11:58:23 AM
Subject Re: Is SMP/E needed for installs?

Thanks to many people politely telling me, "Hey dummy, use SYMBOLS=", I have 
gotten around the must-change-many-places problem with the SMP/E jobs. Thanks!

Next, Gil suggested using an INCLUDE member, so the SETs get done exactly once, 
which I quite like. But now I'm stumped again.

Here's my trivial test job:
//TEST     JOB  MSGLEVEL=(1,1),MSGCLASS=A,NOTIFY=&SYSUID
//*
//* THE FOLLOWING DATA SETS EXIST:
//*      PHS.PDS.JCL840(TEST)     **THIS JOB
//*      PHS.PDS.JCL840(SETS)     **THE INCLUDE MEMBER
//*      HUD840.VVSH84C.SMPMCS    **THE INPUT DATA SET
//*      PHS840.SAMPLE.MCS        **THE OUTPUT DATA SET
//*
//* PHS.PDS.JCL840(SETS) INCLUDES THE FOLLOWING LONE STATEMENT:
//*      SET  HLQ=HUD840
//*
//COPYIT   EXEC PGM=IEBCOPY
//JCLLIB   DD   DSN=PHS.PDS.JCL840,DISP=SHR
//         INCLUDE MEMBER=SETS
//SYSPRINT DD SYSOUT=*
//SYSUT1   DD DSN=&HLQ..VVSH84C.SMPMCS
//SYSUT2   DD DSN=PHS840.SAMPLE.MCS,DISP=OLD
//SYSIN    DD *
    COPYGRP INDD=((SYSUT1,R)),OUTDD=SYSUT2
/*

This fails with:
STMT NO. MESSAGE
       4 IEFC017I INCLUDE SETS WAS NOT FOUND
       6 IEFC624I INCORRECT USE OF PERIOD IN THE DSN FIELD
I understand the latter error (because the SET didn't happen), but the first is 
baffling. Based on
https://www.ibm.com/docs/en/zos/2.1.0?topic=description-examples-include-statement
I first thought that the JCLLIB needed to *precede* the EXEC statement. That's 
sure what they show. But if I move it up one, I get:
STMT NO. MESSAGE
       2 IEFC019I MISPLACED DD STATEMENT
.followed by the same two other errors.

I'm sure this is something obvious, but I've been tinkering and not getting anywhere. At 
one point I did have it complaining not about the JCLLIB (which was before the EXEC at 
that point), but rather that the "JOB HAS NO STEPS", which I don't understand 
either, but that went away with more tinkering-though nothing I did really ADDED a 
jobstep.

Any ideas?


----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to