Conversion Process Flow

Overview of the job flow in the conversion process

This section describes in detail the components and flow of the conversion process from the perspective of jobs, programs, and data sets.

A familiarity with the conversion process flow will help in understanding the conversion logic and the installation and operation steps discussed in Conversion Steps.

The process is comprised of the following jobs:

JOB0 - Identify and extract the CA ESP Reports

JOB0 contains steps that produce, package, and compress the following production files and, if requested, upload the compressed package to the BMC FTP support site:

  1. CA ESP Procedures library, as a sequential file

  2. CA ESP Events (produced by program ESP via command L LEVEL(USERID) ALL)

  3. CA ESP Calendar (produced by program ESP via commands LISTCAL, LISTHOL and LISTSPEC)

  4. CA ESP Symbolic Variable Members

  5. CA ESP JCL Libraries

  6. Compressed file containing all the CA ESP reports.

JOB1 - Create libraries and the CMEM, Control-O tables, and XML definitions

JOB1 creates

  • the Control-M tables from the source members containing CA ESP procedures, using the CTMBLT utility, which is described in the INCONTROL for z/OS Utilities Guide.

  • the CMEM Table containing ON DSNEVENT, ON STEP, and ON JOBARRIVAL events for:

    • jobs triggered by CA ESP data set trigger workload objects

    • CA ESP completion code checking specific STOP actions

    • shouts for job start notification

  • the Control-O ON EVENT and ON DSNEVENT rule table from source members containing CA ESP events.

  • XML table definitions and global conditions for mainframe and distributed jobs. The global conditions are renamed by adding prefixes defined according to specified parameters.

  • XML calendar definitions for mainframe and distributed jobs.

  • XML Account files for FTP and SQL job definitions and a SAP Account file.

  • Control statements to build the IOA Global Variable database from the ESP VTLIST report.

JOB1 Input

  1. CA ESP PROCedure library(s)

    Note: for each input PROCedure library, the user must repeat STEP4A in JOB1.

  2. CA ESP Event file

  3. CA ESP symbolic variable definitions members

  4. XLATDSN file (INVOKE statement processing)

    The XLATDSN file specifies pairs of DSNs in a SYSIN-type file, one DSN per line, beginning in column 1.

    The DSNs represent the INVOKE and SYMLIB libraries which are referenced in both the ESP PROC libraries and the Event file. The user specifies two records per each INVOKE DSN, the first being the actual ESP INVOKE DSN and the second being its translation during the conversion (as explained below).

    • For each INVOKE statement in the PROC file for which the DSN is not accessible to the conversion tool, a copy must be made to the file named in the 2nd DSN of the pair.

    • All Symbol libraries coded in the event file (as INVOKEs) must be specified in this file even if the file does not need to be copied (in such a case, repeat the same name in the pair).

    • All SYMLIB's should also be included in this list. All SYMLIB symbolic names are replaced with the corresponding real file name from the LISTSYML report. These real names are then translated using the XLATDSN file.

    • INVOKEs of sequential files (both in the PROC and event files) are supported and when specified in the XLATDSN file must be translated to sequential files.

    • In the Event file, a library in an INVOKE statement which invokes a Procedure from the ESP PROC library should be specified in XLATDSN with a '+' in col 1 followed by the DSN.

    WARNING: do not code a DSN in the XLATDSN file with both a ‘+’ prefix (indicating that it is an ESP Procedure library) and without a ‘+’ prefix (meaning that it is a Symbolic variable library).

    The conversion tool adds the symbolic variable ESPEVENT=xxx (where xxx is the invoking event name) to all Procedures which are invoked by an ESP Event, hence any INVOKE statement in the procedure which, at run time, is dependent on its invoking event name will use the value of ESPEVENT inserted above (or some variant of it). Therefore, if a procedure is INVOKEd by more than one event, the conversion will use only the first matching event name it encounters to set ESPEVENT in the resolution of the INVOKE member name,

    The INVOKE statements are then processed as follows:

    • In an Event, when an INVOKE of a symbolic library is encountered it is removed (commented) from the Event file and when the Procedure file is processed it is added to the corresponding INVOKEd Proc.

    • When an INVOKE of a Procedure member is encountered, it remains in the Event file and is converted into a Control-O ON EVENT DO FORCEJOB command with the Control-M scheduling library name as specified in the LIBNAME conversion in the SET ESP CONVERSION DEFAULTS OPTIONS panel and member (table) name as specified in the INVOKE command.

    If conversion option ORDEREX is set to the REXX exec name, all DO FORCEJOB actions are converted to DO TSO actions with the REXX exec name of ORDEREX, to perform the CTMAPI ORDER process.

  5. ESP VTLIST variable table file

  6. ESP RESOURCE definition file

Event File Example 1

If the Event file specifies

Copy
EVENT ID(KSA003.HISTMAINT)
INVOKE 'KSA003.ESP.WORKSHOP(HSTMANT)'

and the Proc file in member HSTMANT specifies:

Copy
EVENTID='%ESPEVENT(1:6)' 
INVOKE  'DSN.SYMBOLIC(%EVENTID)'
INVOKE  'DSN.SYMBOLIC(ABCD)' 

then member KSA003 (the first 6 characters of the Event name) from the DSN.SYMBOLIC library will be copied in to replace the INVOKE which references the symbolic member name %EVENTID in the Proc file. Member ABCD in DSN.SYMBOLIC library is also expanded in the Proc file.

Event File Example 2

If the Event file specifies the symbolic member SYMHIST in an INVOKE statement and a symbolic member SYMHIST2 via the SYMLIB SYMSET statement as follows:

The SYMSET is defined in the ESP DEFSYML command:

Copy
DEFSYML SYMSET DA('ESP.HISTORY.SYMBOLS(SYMHIST2)')

as listed in the ESP LISTSYML report.

Since the ESP.HISTORY.SYMBOLS library is not accessible to the conversion program, the customer copies it to COPY.SYMLIB.

Copy
EVENT ID(QTB003.HISTUPDATE)
    SYMLIB  SYMSET 
    INVOKE  'DSN.SYMBOL.LIB(SYMHIST)'
    INVOKE  'DSN.ESPPROC.LIB(HISTUPDT)' 

and in the XLATDSN file the user specifies:

Copy
ESP.HISTORY.SYMBOLS
    COPY.SYMLIB 
    DSN.SYMBOL.LIB 
    COPY.SYMBOL.LIB

which will cause both of the following statements in the Events file to be commented out:

Copy
INVOKE  SYMSET             ('SYMLIB' is replaced with 'INVOKE')
    INVOKE  'DSN.SYMBOL.LIB(SYMHIST)'

and both of these statements are then copied to the HISTUPDT member in the ESP PROC file as follows:

Copy
INVOKE  'ESP.HISTORY.SYMBOLS(SYMHIST2)'    (from LISTSYML report)
    INVOKE  'DSN.SYMBOL.LIB(SYMHIST)' 

and are then expanded in-line for symbolic variable resolution.

JOB1 Output

The following table describes the various output files and their characteristics.

Table 7 JOB1 Output Files and Characteristics

Name

Description

CTM.Vxxx.DAILY

File containing all table names to be referenced by the New Day procedure (where xxx refers to the version number)

CTM.Vxxx.ONSPTAB

Control-M CMEM table containing DSNEVENT, ON STEP and ON JOBARRIVAL DO SHOUT events (where xxx refers to the version number)

CTM.ESP.SCHEDULE

Control-M table library

CTM.ESP.OUTLST

Table definition file

CTM.ESP.BLTPRM

Sorted table definition file

CTM.ESP.CAL

File containing calendar definitions

CTM.ESP.XML

XML file containing distributed job definitions

CTM.ESP.XML2

XML file containing distributed job definitions

CTM.ESP.CALDS.XML

XML file containing calendar definitions for distributed systems jobs

CTM.ESP.CALMF.XML

XML file containing calendar definitions for mainframe jobs

CTM.ESP.ACCOUNT.AFT.XML

XML file containing AFT ACCOUNT information

CTM.ESP.ACCOUNT.DB.XML

XML file containing DB ACCOUNT information

CTM.ESP.ACCOUNT.SAP

File containing SAP ACCOUNT information

CTM.Vxxx.CTOEVT

Control-O rules table containing ON EVENT and ON DSNEVENT events (where xxx refers to the version number)

CTM.ESP.RULES

Both CTOEVT and ONSPTAB datasets are copied into this library in the CTORULES member.

If the ORDEREX option is set, then all DO FORCEJOB actions are converted to DO TSO actions, with the name of the REXX exec specified by ORDEREX.

Note: Following the conversion, this CTORULES member must be moved to a member within a Control-O rules table library.

CTM.ESP.MFPOOL

IOA Global Variable control statements for the IOAGLV utility. These statements load all the ESP variables into the named variable pool, so that they become accessible to the job via the %%\\tablename\varname SETVAR in the job definition.

CTM.ESP.DSPOOL

Pool Variables control statements for the Control-M/Server CTMVAR utility. These statements load all the ESP variables into the named variable pool, so that they become accessible to the job via the %%POOLSYM=ctm_esp_globalvar_pool SETVAR auto-edit variable in the job definition.

JOB2 - Convert JCL Members

JOB2 converts the CA ESP JCL libraries to Control-M format.

JOB2 Input

  1. Dynamically allocated copies of CA ESP JCL libraries

  2. JCL library DSN list

JOB2 Output

  1. JCL libraries in Control-M format

  2. JCL conversion report

When conversion option JCLIPLCE is set to ‘N’, the following two output files are created:

  • CTM.ESP.CNVJCLO – a sequential file of the JCL members before they are converted in IBM IEBUPDTE format

  • CTM.ESP.CNVJCLN – a sequential file of the JCL members after they are converted in IBM IEBUPDTE format