CMN$$JBL - JOBLIB / STEPLIB
We recommend against including ChangeMan ZMF load libraries in the LINKLIST.
ChangeMan ZMF includes skeleton CMN$$JBL
, which provides a standard JOBLIB concatenation for batch jobs submitted from the started task.
Skeleton CMN$$JBL
is also used to provide ZMF libraries in a STEPLIB for plan lookup program CMNDB2PL
in the DB2 Option. In file tailoring, the DD name defaults to JOBLIB unless variable &JOBLBDD
is set to STEPLIB or some other value.
Skeleton CMN$$JBL
is included by these skeletons.
Skeleton | Description | DD Name |
---|---|---|
CMN$$BRQ | Routine to connect to a remote task for backouts and reverts | STEPLIB |
CMN$$D2J | JOB statement for DB2 bind jobs | JOBLIB |
CMN$$JCD | JOB statement for user-initiated jobs | JOBLIB |
CMN$$JNM | JOB statement for baseline ripple and other installation jobs at the development instance | JOBLIB |
CMN$$NTF | Routine to invoke batch approval notification | JOBLIB |
CMN$$PRB | Routine for DB2 binds at promotion or demotion | STEPLIB |
CMN$$RAL | Routine for release audit reporting tables update | STEPLIB |
CMN$$RAP | Routine for generate release audit reports | STEPLIB |
CMN$$RAU | Routine for audit area | STEPLIB |
CMN$$RPB | Routine for DB2 binds at remote promotion or demotion | STEPLIB |
CMN$$RPJ | JOB statement for remote promotion or demotion | JOBLIB |
CMN$$SJN | JOB statement for remote site installation or backout | JOBLIB |
CMN$$SPB | Sample routine for promotion DB2 binds using local shadow libraries | STEPLIB |
CMN21 | Routine for DB2 binds for production library installation | STEPLIB |
CMN32 | Routine for DB2 binds for baseline ripple | STEPLIB |
CMN49 | Routine for DB2 binds for production library backout | STEPLIB |
CMN56 | Routine for DB2 binds for reverse baseline ripple | STEPLIB |
...
The delivered skeleton contains selection logic to concatenate test ZMF load libraries in front of production ZMF libraries for a test instance of ChangeMan ZMF. The actual data set names are in variables that are defined in the skeleton CMN$$DSN
.
If you license the ChangeMan ZMF DB2 Option, do not include a DB2 system load library
in skeleton CMN$$JBL
. Skeletons that create JCL for DB2 bind jobs obtain the DB2 library
name from variable &STSLOD using logic like this (example taken from CMN$$PRB
):
//DB2PL EXEC PGM=CMNDB2PL, *** DETERMINE DB2 BIND REQUIREMENTS
// REGION=0M,
// COND=(4,LT)
)SET JOBLBDD = STEPLIB
)IM CMN$$JBL
)SEL &STSLOD NE &Z
)SET DB2DSNLD = &STSLOD
)IM CMN$$D2X
// DD DISP=SHR,DSN=&DB2DSNLX
// DD DISP=SHR,DSN=&STSLOD
)ENDSEL &STSLOD NE &Z
...
Variable &STSLOD contains the library name entered in the DB2 System Load Library field on the DB2 Physical Subsystems Part 1 of 2 (CMNGD2S0) panel in DB2 global administration.
Customization Tasks
-
Copy skeleton
CMN$$DSN
from your vendor CMNZMF SKELS library to your custom SKELS library. -
In the section that defines the JOBLIB, code the appropriate values to use delivered and CUSTOM load libraries for CMNZMF LOAD and SERCOMC LOAD libraries. This is as delivered (note the first half are for a test instance of ChangeMan ZMF, second half are for a production instance of ChangeMan ZMF):
)CM THIS DEFINES THE VARIOUS LOAD LIBRARIES USED TO BUILD THE JOBLIB )CM CONCATENATION. )CM (CMN$$JBL) )CM )SET ZMFCTST = somnode.CMNZMFt.CUSTOM.LOAD )SET SERCTST = somnode.SERCOMCt.CUSTOM.LOAD )SET ZMFVTST = somnode.CMNZMFt.LOAD )SET SERVTST = somnode.SERCOMCt.LOAD )SET ZMFCPRD = somnode.CMNZMF.CUSTOM.LOAD )SET SERCPRD = somnode.SERCOMC.CUSTOM.LOAD )SET ZMFVPRD = somnode.CMNZMF.LOAD )SET SERVPRD = somnode.SERCOMC.LOAD
...
Note that in the distributed
CMN$$DSN
, the commented name in brackets tells you the name of the relevant skeleton(s) using these variables, in this example it isCMN$$JBL
. -
If you have a ChangeMan ZMF test instance, there is logic in
CMN$$JBL
based on subsystem ID so that your test libraries are concatenated in front of the libraries you use to run your production ChangeMan ZMF instance. You will also need to copy and edit theCMN$$JBL
skeleton to use the correct subsystem ID for your test instance.