Previous Topic: 7.3.5 CICS Application Unit Definition (CICAPU)

Next Topic: 7.3.7 CICS Relative Longevity Routine (CICRLRT)

7.3.6 CICS Application Unit Derivation Routine (CICAURT)


The CICS application unit derivation routine, CICAURT, is a
user exit that you provide to derive the data element CICAPU
(CICS Application Unit ID).  This exit is written in SAS and
is stored in member CICAURT of prefix.MICS.PARMS.  It is
called by the DAY040 step of the DAILY job for each
transaction record processed by the CICS Analyzer.  You can
define a different version of the CICAURT exit for each unit
data base to suit your CICS processing and reporting needs.

You can use any of the data elements that CA MICS reads from
the CICS transaction record to derive the application unit.
Some of the elements most commonly used to populate the
CICAPU data element include:

    TRANCODE -  The CICS transaction ID or the translation
                of the identifier as described in
                prefix.MICS.PARMS(CICOPS).

    PROGRAM  -  Program name.

    TRANTYPE  - C/S/M/L/X for conversational, short, medium,
                long, or excessive transaction types.

    TERMINAL  - CICS terminal identifier.

You may modify the CICAURT exit routine at any time.  You do
not have to run any CA MICS generation jobs after making a
change.  The change will take effect in the next DAILY job
execution.


CODING CONSIDERATIONS

Follow these guidelines for coding this CA MICS exit routine:

1.  Validate input data where possible.  When invalid codes
    are encountered, they should be assigned to a CICAPU
    value representing the installation's overhead
    accumulator.

    NOTE:  Allowing invalid or garbage application units into
    the CA MICS Data Base significantly increases the number
    of records and therefore the DASD space requirements of
    the CICS Information Area files.

2.  Ensure that all of the fields that you require are
    available for application unit construction.  For
    example, certain transactions may be executed without
    being attached to a terminal facility.  This situation
    may occur for miscellaneous overhead transactions, such
    as the BMS message routing control transaction.  Such a
    data collection record would have no valid terminal
    identifier present.

3.  Refer to the discussion of exit coding in Section
    2.3.1.5, Notes on Coding CA MICS Parameters, in the
    CA MICS Planning, Installation, Operation, and
    Maintenance Guide.

The CICS Analyzer delivers a sample CICAURT exit routine in
prefix.MICS.PARMS(CICAURT).  You should review and modify the
sample code to suit your workload reporting needs.  The
sample exit is shown below.  A worksheet for coding the
CICAURT exit routine is shown in Figure 7-6.

/* ********************************* */
/*  APPLICATION UNIT DERIVATION EXIT */
/* ********************************* */

/* ********************************* */
/* ALL CICS SYSTEM TRANSACTION IDS   */
/* BEGIN WITH THE LETTER 'C'.  CICS  */
/* USES THIS NAMING CONVENTION TO    */
/* RECOGNIZE SUCH TRANSACTIONS, SO   */
/* THEY CAN BE TREATED SPECIALLY.    */
/* FOR EXAMPLE, TRANSIDS THAT BEGIN  */
/* WITH 'C' CANNOT BE DISABLED.      */
/* SINCE THERE IS LITTLE CONSIDERA-  */
/* TION FOR DETAILED ANALYSIS OF     */
/* CICS SYSTEM TRANSACTIONS, GROUP   */
/* THESE INTO 'OVERHEAD'.            */
/* IF YOUR SITE HAS APPLICATION      */
/* TRANSIDS THAT BEGIN WITH 'C',     */
/* PUT SPECIFIC TESTS FOR THEM       */
/* BEFORE THIS CONDITIONAL.          */
/* ********************************* */
   IF TRANCODE = :'C'  THEN GOTO AURTOVHD;

/* ********************************* */
/* DEFAULT CICAPU TO TRANS ID.       */
/* ********************************* */

   CICAPU = TRANCODE;
   GOTO AURTRTEX;
AURTOVHD:
   CICAPU = 'OVERHEAD';
AURTRTEX:

+--------------------------------------------------------------------------+ | INSTALLATION PREPARATION WORKSHEET: CICS Application Unit Derivation | | Routine Definition | | PARMS Library Member is CICAURT | | Reference Sections: 7.3.5 and 7.3.6, CA MICS CICS Analyzer Guide | +--------------------------------------------------------------------------+ | | | * VALIDATE FOR VALID APPLICATION UNITS, WHERE POSSIBLE ; | | IF application data is not valid GOTO AURTOVHD ; | | ________________________________________________________________________ | | | | ________________________________________________________________________ | | | | ________________________________________________________________________ | | | | ________________________________________________________________________ | | | | ________________________________________________________________________ | | | | ________________________________________________________________________ | | | | * BUILD APPL. UNIT FIELDS; | | CICAPU=field source 1 || | | field source n ; | | ________________________________________________________________________ | | | | ________________________________________________________________________ | | | | ________________________________________________________________________ | | | | ________________________________________________________________________ | | | | ________________________________________________________________________ | | GOTO AURTRTEX ; | | * LINKED ROUTINE TO BUILD INSTALLATION OVERHEAD APPLICATION UNITS; | | AURTOVHD: | | CICAPU='overhead category' ; | | ________________________________________________________________________ | | | | ________________________________________________________________________ | | | | ________________________________________________________________________ | | AURTRTEX: | +--------------------------------------------------------------------------+ | ....5...10...15...20...25...30...35...40...45...50...55...60...65...70.. | +--------------------------------------------------------------------------+



 Figure 7-6.  CICS Application Unit Derivation Routine Worksheet