CICS provides a common token to identify transactions that
are executed in an MRO (multiregion option) or ISC
(intersystem communication) environment. This common token
is known as the unit of work ID, which is stored in the
CA MICS variable CICUOWID. The CA MICS Analyzer Option for
CICS uses the token variable to sort detail transaction data
and provides you with an exit point during which
accounting-related information from the TOR is propagated to
the AORs and FORs. The exit is known as the CICS multisystem
account derivation exit. It is a user exit that you code in
SAS. The exit is stored in member CICMSAC of
prefix.MICS.PARMS.
You can activate the CICMSAC exit by specifying the MSACCOUNT
statement in prefix.MICS.PARMS(CICOPS). If MSACCOUNT is
present in CICOPS, then the CICMSAC exit code is included
during the DAY040 step of the DAILY job. Otherwise, the code
is omitted. By default, the CICMSAC exit is shipped turned
off.
The purpose of the CICMSAC exit is to reset the CICS
accounting data elements (CICACT1 through CICACT9) in the
AORs and FORs with that of the TOR. This ensures that MRO
records written for the same transaction are summarized under
identical account code values. This exit does not collapse
multiple transaction records into one record to show
end-to-end execution.
Prior to calling the CICMSAC exit, the CA MICS Analyzer
Option for CICS first sorts the detail transaction data in
the proper sequence. To ensure uniqueness, the CA MICS
Analyzer Option for CICS sorts the data by CICNETNM (the
originating system ID known to VTAM) and CICUOWID. To ensure
that TOR data is sorted ahead of AOR and FOR data, mirror
transaction start time is also used as part of the sort
sequence keys.
To code the CICMSAC exit, you may consider using one of the
commonly used approaches described below.
o Changing the accounting fields to correspond directly
to the accounting fields that were derived for the
initial transaction. This approach retains the
accounting field values on the initial transaction by
using the statements:
IF FIRST.CICUOWID THEN DO;
retain the accounting field values
END;
ELSE DO;
set the accounting fields equal to the saved
values
END;
o Changing the accounting fields to the value of the
initial transaction, but using one of the accounting
fields to designate that the transaction was the
result of an MRO/ISC interaction.
IF FIRST.CICUOWID THEN DO;
save the accounting field values
END;
ELSE DO;
set the accounting fields 1-3 equal to the saved
values
CICACT4 = 'MRO';
END;
You are responsible for testing the accuracy of modifications
to the sample exit routine supplied in the CA MICS Analyzer
Option for CICS distribution libraries. Be sure to follow
the guidelines for coding exits in Section 4.3 of the System
Modification Guide. The worksheet for programming the CICS
Multisystem Derivation Exit is shown in Figure 7-8.
You can reference any of the data elements contained in the
CICS monitor data collection records during the CICMSAC exit.
The data elements that are most often used in deriving the
account variables are:
TRANCODE - The CICS transaction ID or the translation of
the identifier as described in the CICS
Processing Options
TERMINAL - CICS terminal identifier
USERID - CICS RACF user identification
CICACT1-CICACT9 - The derived accounting codes
CICNETNM - The name of the originating CICS region
CICUOWID - The unique identifier for the originating
transaction
OPERID - CICS operator identification from the CICS
Signon Table (only applicable to releases
prior to CICS TS)
The following example shows the reassignment of CICS account
code variables based on three account fields. The third
account field will be set to the value 'MRO' to designate
subsequent transactions associated with an MRO interaction.
LENGTH USR_ACT1-USR_ACT2 $ 8;
RETAIN USR_ACT1-USR_ACT2;
IF CICNETNM NE ' ' THEN DO;
IF FIRST.CICUOWID THEN DO;
USR_ACT1 = CICACT1;
USR_ACT2 = CICACT2;
END;
ELSE DO;
CICACT1 = USR_ACT1;
CICACT2 = USR_ACT2;
CICACT3 = 'MRO';
END;
END;
+--------------------------------------------------------------------------+ | INSTALLATION PREPARATION WORKSHEET: CICS Multisystem Account Derivation | | | | PARMS Library Member is CICMSAC | | Reference Section: 7.3.9, CA MICS Analyzer Option for CICS Guide | +--------------------------------------------------------------------------+ | | | * VALIDATE FOR VALID SOURCE DATA, IF APPLICABLE: | | | | IF FIRST.CICUOWID THEN DO; | | (save CICACT1 ) ____________________________________________________ | | | | (save CICACT2 ) ____________________________________________________ | | | | (save CICACT-n) ____________________________________________________ | | ELSE DO; | | (replace CICACT1) ____________________________________________________ | | | | (replace CICACT2) ____________________________________________________ | | | | (replace CICACT-n) ____________________________________________________ | | | | END; ____________________________________________________ | | | | | +--------------------------------------------------------------------------+ | ....5...10...15...20...25...30...35...40...45...50...55...60...65...70.. | +--------------------------------------------------------------------------+
Figure 7-8. CICS Multisystem Account Derivation Worksheet
| Copyright © 2012 CA. All rights reserved. | Tell Technical Publications how we can improve this information |