Scripts are parsed on the z/OS platform using JCL similar to sample member SQDPARSE included in the distribution and displayed below. The nature of the z/OS file system requires more explicit specification of file locations than typically necessary on other platforms. While references to specific part files are no different within the Apply Engine script the parts themselves are generally stored in multiple libraries that are specified in the Parse job JCL.
Sample JCL
Note: References in the script to the location of IMS, DB2 Parts and called Procs will need to include the proper DDNAME references associated with the JCL, ie: DD:<ddname>(<file_name>).
//SQDPARSE JOB 1,MSGLEVEL=(1,1),MSGCLASS=H,NOTIFY=&SYSUID
//*
//JOBLIB DD DISP=SHR,DSN=SQDATA.V400.LOADLIB
//*
//*-------------------------------------------------------
// SET ENGINE=<ENGINE>
//*-------------------------------------------------------
//*
//SQDPARSE EXEC PGM=SQDPARSE
//SYSPRINT DD SYSOUT=*
//CEEDUMP DD SYSOUT=*
//*SQDLOG8 DD DUMMY
//SQDLOG DD SYSOUT=*
//*
//SRC DD DISP=SHR,DSN=<TEST.APP>.ENGINE(&ENGINE)
//OBJ DD DISP=SHR,DSN=<TEST.APP>.SQDOBJ(&ENGINE)
//*
//SQDPARMS DD *
DD:SRC
DD:OBJ
ENGINE=<ENGINE>
/*
//*-----------------------------------------
//* ENGINE PART INCLUDE DATASETS
//*-----------------------------------------
//*CDCPROC DD DISP=SHR,DSN=<TEST.APP>.CDCPROC
//*COPYLIB DD DISP=SHR,DSN=<TEST.APP>.COPYLIB
//*DB2DDL DD DISP=SHR,DSN=<TEST.APP>.DB2DDL
//*IMSDBD DD DISP=SHR,DSN=<TEST.APP>.IMSDBD
//*IMSSEG DD DISP=SHR,DSN=<TEST.APP>.IMSSEG
Example
Parse an engine script named IMSTODB2 that will perform near real-time replication of "Sales" application data from an IMS database captured on one system named "MVS21" to DB2 tables running on a different z/OS system. The source "Host" system, port number and Publisher Alias will be passed as a parameter because the engine script has been written so that it can be reparsed to process data coming from other systems as well.
//*-------------------------------------------------------
// SET ENGINE=<IMSTODB2>
//*-------------------------------------------------------
//*
//SQDPARSE EXEC PGM=SQDPARSE
//SYSPRINT DD SYSOUT=*
//CEEDUMP DD SYSOUT=*
//*SQDLOG8 DD DUMMY
//SQDLOG DD SYSOUT=*
//*
//SRC DD DISP=SHR,DSN=TEST.SALES.ENGINE(&ENGINE)
//OBJ DD DISP=SHR,DSN=TEST.SALES.SQDOBJ(&ENGINE)
//*
//SQDPARMS DD *
DD:SRC
DD:OBJ
ENGINE=IMSTODB2
HOST=MVS21
PORT=2626
PUBLISHER=IMSPUB1
/*
//*-----------------------------------------
//* ENGINE PART INCLUDE DATASETS
//*-----------------------------------------
//CDCPROC DD DISP=SHR,DSN=TEST.SALES.CDCPROC
//DB2DDL DD DISP=SHR,DSN=TEST.SALES.DB2DDL
//IMSDBD DD DISP=SHR,DSN=TEST.SALES.IMSDBD
//IMSSEG DD DISP=SHR,DSN=TEST.SALES.IMSSEG