Previous Topic: 9.3.2 Data Dictionary Print Program (CICCDCPT)

Next Topic: 9.3.4 CICS GDG Generation Program (CICGDGGN)

9.3.3 CICS Standalone Processing Program (CICALONE)


The utility program CICALONE processes CMF or ASG-TMON data
and creates work files that you can use to analyze CICS
activity in detail without affecting the content of the CA
MICS database. The utility can be used to analyze data from
one or more regions, but only from one of the above input
data sources.

The work files created by CICALONE are identical in content
to the standard CICS files at the DETAIL timespan.  They
allow you to perform on-demand analysis of CICS at the
transaction level outside of normal CA MICS operation.
However, to run this utility program, you must have installed
the CA MICS Analyzer Option for CICS in a unit.

Note: CICALONE does not have an automated interface to CA SMF
Director.  CICALONE is intended to execute independently
of a unit database, so there is no way to programmatically
identify eligible input files.  Therefore, you must continue
to manually define your SMF input using the INPUTSMF DD as
described below.

The JCL for CICALONE is in prefix.MICS.CNTL(CICALONE).  It is
generated when you install the CA MICS Analyzer Option for
CICS in a database unit.  Before submitting this JCL to run
the utility program, you must do the following:

1.  Supply the name of your input data set.
2.  Edit prefix.MICS.PARMS(CICALONE) to specify the SAS
    macros required by this program.
3.  Supply your own SAS code to either analyze the work
    files or store the files in permanent SAS files.  By
    default, CICALONE writes the files to the WORK DD, which
    is deleted upon completion of the job.  To review the
    logic of CICALONE, see
    sharedprefix.MICS.SOURCE(CICALONE).

The following shows the generated JCL for CICALONE:

// JOB card
//CICALONE EXEC MICSSHRx
//WORK     DD UNIT=SYSDA,SPACE=(TRK,(500,200))
//INPUTSMF DD DSN=your input data set
//SYSIN DD DISP=SHR,DSN=sharedprefix.MICS.SOURCE(CICALONE)

You must update the INPUTSMF DD statement to supply the name
of your input data set.  If you are processing ASG-TMON data,
you must change the input ddname to match the ddname that you
supply in the ddname macro in prefix.MICS.PARMS(CICALONE).

The macros defined in prefix.MICS.PARMS(CICALONE) are
described below.  Each macro contains a default definition.
You must change the default definition if it does not match
your processing requirement.

DDNAME   - This defines the ddname associated with the input
           data.  If the input is in SMF format, then code
           INPUTSMF.  Otherwise, specify any other one-to-
           eight character ddname.

           Default definition:

           %MACRO DDNAME;
            INPUTSMF
           %MEND;

MONFLGS - This identifies ASG-TMON input source.  Set the
          appropriate flag to 1 based on the input.  Only one
          input data source can be processed.  For example,
          if the input is ASG-TMON, then set MONMON to 1,
          CMFMON, TCEMON to 0.

           Default definition:

           %MACRO MONFLGS;
            CMFMON = 1;     /*CMF or OMEGAMON           */
            MONMON = 0;     /*ASG-TMON                  */
            TCEMON = 0;     /*ASG-TMON for CICS TS 2.0+ */
            %MEND;

CICIPCV  - This defines the input processing control
           variables required by this utility program.  You
           must modify the default values to match your
           data center specifications.  To process multiple
           regions, repeat the following control variables,
           where nn = 01 to 99, for each region.  For
           example, to process 3 regions, specify values for
           MSYS01, MSYS02, MSYS03, MCIC01, MCIC02, MCIC03 and
           so on.

           The control variables are as follows:

           MSYSnn - The original (SMF) system ID.  Specify
                    "CICS" for non-SMF input.
           MCICnn - The CICS ID assigned by you.
           MMONnn - The monitor type.  CMF or ASG-TMON.
           MGMTnn - The GMT offset.  Specify the value as a
                    SAS time constant.
           MREGnn - The VTAM APPLID.
           MIVLnn - The CMF recording interval.  Specify the
                    value as a SAS time constant.
           MSELnn - The record selection code.  Always
                    code "0".

          Default definition:

           %MACRO CICIPCV;
            MSYS01  = 'PROD';         /* ORGSYSID */
            MCIC01  = 'CIC1';         /* CICSID */
            MMON01  = 'CMF';          /* MONITOR TYPE */
            MGMT01  = '6:00:00'T;     /* GMT OFFSET */
            MREG01  = 'CICA120';      /* APPLID */
            MIVL01  = '0:15:00'T;     /* INTERVAL */
            MSEL01  = '0';            /* SELCODE  */
           %MEND;

          Example for selecting two regions:

           %MACRO CICIPCV;
            MSYS01  = 'PROD';         /* ORGSYSID */
            MCIC01  = 'CIC1';         /* CICSID */
            MMON01  = 'CMF';          /* MONITOR TYPE */
            MGMT01  = '6:00:00'T;     /* GMT OFFSET */
            MREG01  = 'CICA120';      /* APPLID */
            MIVL01  = '0:15:00'T;     /* INTERVAL */
            MSEL01  = '0';            /* SELCODE  */

            MSYS02  = 'PROD';         /* ORGSYSID */
            MCIC02  = 'CIC2';         /* CICSID */
            MMON02  = 'CMF';          /* MONITOR TYPE */
            MGMT02  = '6:00:00'T;     /* GMT OFFSET */
            MREG02  = 'CICA100';      /* APPLID */
            MIVL02  = '0:15:00'T;     /* INTERVAL */
            MSEL02  = '0';            /* SELCODE  */
           %MEND;

REGIONS  - This specifies the total number of regions being
           processed by CICALONE.  It must match the number
           of regions defined in the CICIPCV macro.  The
           default is 1.

CICTRAN  - This assigns a value to the TRANTYPE data element.
           This is a null macro by default.  You can modify
           the macro to supply your logic or use the member
           CICRLRT in prefix.MICS.PARMS to assign TRANTYPE.

           Example:

           %MACRO CICTRAN;
            IF TRANCODE EQ 'CE' OR TRANCODE EQ 'CS' THEN
            TRANTYPE='X';
            ELSE IF TRANCODE EQ 'A' THEN TRANTYPE='S';
            ELSE IF TRANCODE EQ 'B' THEN TRANTYPE='L';
            ELSE TRANTYPE='M';
           %MEND;

           or

           %MACRO CICTRAN;
            %INCLUDE PARMS(CICRLRT);
           %MEND;

CICACRT  - This assigns values to the CICS account codes.  By
           default, this macro calls the member CICACRT in
           sharedprefix.MICS.PARMS to assign CICACTx.  You
           can override the CICACRT macro by supplying your
           own code.

           Example:

           %MACRO CICACRT;
            CICACT1=SUBSTR(TRANCODE,1,2);
            CICACT2=SUBSTR(TRANCODE,3,2);
           %MEND;

CICAURT  - This assigns values to the CICS application unit
           CICAPU.  By default, this macro calls the member
           CICAURT in prefix.MICS.PARMS to assign CICAPU.
           You can override the CICAURT macro by supplying
           your own code.

           Example:

           %MACRO CICAURT;
            IF TRANCODE EQ : 'C' THEN CICAPU ='OVHD    ';
            ELSE CICAPU=TRANCODE;
           %MEND;

USYSID   - This assigns SYSID values.  By default, this macro
           assigns SYSID based on the definitions in
           prefix.MICS.PARMS(SYSID).  You can override the
           USYSID macro by supplying your own code.

           Example:

           %MACRO USYSID;
            IF ORGSYSID EQ 'X090' THEN DO;
              SYSID='X090';
              MIPS=17.5;
              CPUMODEL='3090';
            END;
           %MEND;

CMFINP   - This defines the INFILE statement for the CMF
           input data set.  Do not change this macro
           definition.

MONINP   - This defines the INFILE statement for ASG-TMON
           input data set.  Do not change this macro
           definition.

TCEINP   - This defines the INFILE statement for ASG-TMON for
           CICS TS 2.0 and above input data set.  Do not
           change this macro definition.


After you have reviewed and completed the macro definitions
in prefix.MICS.PARMS(CICALONE), you should either supply the
code necessary to analyze the work files created by the
CICALONE program, or store the work files in a permanent
SAS database for subsequent analysis.

To add code to the CICALONE program to analyze the work
files, you can simply concatenate your code to the SYSIN DD
statement in the CICALONE JCL, as follows:

// JOB card
//CICALONE EXEC MICSSHRx
//WORK     DD UNIT=SYSDA,SPACE=(TRK,(500,200))
//INPUTSMF DD DSN=your input data set
//SYSIN DD DISP=SHR,DSN=sharedprefix.MICS.SOURCE(CICALONE)
//      DD DISP=SHR,DSN=user.source(mycode)

To store the work files in a permanent SAS database for
later analysis, you must add a DD statement to the CICALONE
JCL for the SAS database.  You must also store the work
files in the SAS database.  To store the files, you can
either modify sharedprefix.MICS.SOURCE(CICALONE) to output
the data directly to your SAS database during file creation,
or you can concatenate your own logic (as shown in the above
JCL) to save the work files after they have been created by
CICALONE.  The following work files are created by CICALONE:

USERCSW - detail CICS transaction file
USERCSY - detail CICS system file for CMF
USERCSM - detail CICS system file for ASG-TMON
USERCSF - detail CICS file segment file for ASG-TMON
USERCIN - detail CICS incident file