Previous Topic: 3.4 Avoiding SMF Duplicate ChargingNext Topic: 3.6 Avoiding IMS Duplicate Charging


3.5 Avoiding CICS Duplicate Charging


Duplicate charging for CICS can occur for any of the following
reasons:

  - Resource utilizations are reported in the SMF type 110 or
    in the ASG TMON (TCE) records for CICS or in the SMF type
    30 records.

  - For CICS/TS Version 2.2 and higher, CICS regions exploit
    the IBM Open Transaction Environment (OTE) to connect
    with DB2.  Much of the resource utilization that is
    reported in DB2 is also reported in CICS.

  - For CICS/TS Version 3.2 and higher, CICS regions exploit
    OTE to connect with MQSeries.  When this happens,
    resource utilization reported for MQSeries overlaps with
    that reported for CICS.

  - If Database Control (DBCTL) monitoring is active in CICS,
    then CICS transactions that initiate IMS activity report
    resource utilization for IMS in the DBCTL user area of
    the type 110 record.  For ASG-TMON (TCE) version 2.0 and
    above, the thread TCB CPU Time (CSUDBTCB, CAUDBTCB)
    elements report CPU time for IMS.


Details on each of these overlapping possibilities are
provided below.


Duplicate Charging for CICS in SMF Type 30 Records
--------------------------------------------------
If you charge for CICS resource utilization from the CICS
Resource Journal File (ACTJCS) and also charge for batch,
TSO, or STC processing from the Batch Job Journal (ACTJBJ) or
Batch Program Journal (ACTJBP) files, then you must take care
to avoid duplicate charging for CICS regions by excluding
CICS regions from charging in SMF.  This can be handled by
Algorithm Qualification as described in section 3.4 -
Avoiding SMF Duplicate Charging.


Duplicate Charging in CICS and DB2 CPU Time
-------------------------------------------
For CICS/TS Version 2.2 and above and DB2 Version 6 and
higher, CPU charges in the DB2 Resource Journal (ACTJDS) file
can overlap with CPU charges in the CICS Resource journal
(ACTJCS) file.  This duplication can be avoided by following
the checklist at the end of section 3.2.2 - Avoiding DB2
Duplicate Charging.  Using this checklist, charges for CPU in
the ACTJDS file will be assigned zero when the DB2 activity
is executed on the same Task Control Block as the initiating
CICS transaction.

Duplicate Charging for CICS and MQSeries CPU Time
-------------------------------------------------
For CICS/TS Version 3.2 and above, CPU times reported in
MQSeries files are included in the CPU times reported in the
Task CPU Real Time (CSUCPRTM), Task CPU Time (CSUCPUTM), and
TCB CPU Time (CSUTCBTM) elements in the CA MICS CICS option.
If you are charging from journal files for both CICS and
MQSeries, you should follow the checklist on how to avoid
duplicate charging in section 3.7.2 - Avoiding MQSeries
Duplicate Charging.  In this way charges will be assigned
zero in MQSeries journal files when the activity is
identified as CICS.


Duplicate Charging for IMS CPU Time in DBCTL User Area
------------------------------------------------------
If you activate DBCTL monitoring in CMF, then you should
charge for it in CICS and exclude DBCTL programs from IMS and
SMF charging.  The CICS data elements derived from the CMF
DBCTL user area are listed below:

    Data
    Element     Description
    -------     ---------------------------------
    CSUDBIO     Number of Database I/O (DBCTL)
    CSUDBGU     Database GU Calls (DBCTL)
    CSUDBGN     Database GN Calls (DBCTL)
    CSUDBGNP    Database GNP Calls (DBCTL)
    CSUDBGHU    Database GHU Calls (DBCTL)
    CSUDBGHN    Database GHN Calls (DBCTL)
    CSUDBGHP    Database GHNP Calls (DBCTL)
    CSUDBISR    Database ISRT Calls (DBCTL)
    CSUDBDLT    Database DLET Calls (DBCTL)
    CSUDBREP    Database REPL Calls (DBCTL)
    CSUDBTOT    Total DL/I Database Calls (DBCTL)
    CSUTENQ     Test Enqueues (DBCTL)
    CSUTENQW    Test Enqueue Waits (DBCTL)
    CSUTSDQ     Test Dequeues (DBCTL)
    CSUUENQ     Update Enqueues (DBCTL)
    CSUUENQW    Update Enqueue Waits (DBCTL)
    CSUUPDQ     Update Dequeues (DBCTL)
    CSUEXEQ     Exclusive Enqueues (DBCTL)
    CSUEXEQW    Exclusive Enqueue Waits (DBCTL)
    CSUEXDQ     Exclusive Dequeues (DBCTL)
    CSUUDQUE    Update Dequeues (DBCTL)
    CSUDEDB     DEDB Calls (DBCTL)
    CSUDEDBR    DEDB Read Operations (DBCTL)
    CSUOVBUF    Overflow Buffers Used (DBCTL)
    CSUUOWC     UOW Contentions (DBCTL)
    CSUBFWT     Waits for DEDB Buffers (DBCTL)
    CSUDBTCB    Thread TCB CPU Time (DBCTL)

WARNING:  These data elements are shipped turned off
          (inactive) and are not part of the standard
          charging elements for CICS.  You must use file
          tailoring to activate them and then create
          computation codes for them in CA MICS Accounting
          and Chargeback before you can use them in your CICS
          charging algorithms.


Since DBCTL is already being charged in the ACTJCS file, it
should not be charged in either IMS or SMF journal files.  To
avoid charging for it in IMS, see section 3.6 - Avoiding IMS
Duplicate Charging.  To avoid charging for it in SMF, see
section 3.4 - Avoiding SMF Duplicate Charging.