Previous Topic: 7. PARAMETERSNext Topic: 7.2 Complex Level Parameters


7.1 Environmental Considerations


 Before coding product parameters, you need to know about the
 IMS environments at your data center.  Before you specify
 parameters for the IMS Analyzer, do the following:

 o  Review the default options for the parameters to determine
    their applicability to your site.

 o  Review reporting requirements to determine whether you
    need to code MICF inquiries to satisfy the needs of the
    IMS group.

 o  Review database unit specifications to determine which
    units should include IMS data.

 o  Review the data source material in Chapter 6 of this
    guide.  The transaction records differ according to data
    source.  However, Section 6.2 lists the data elements (and
    their formats) available for use by logic you code in the
    exits described in Chapter 7.

 Also, you will be required to code three SAS exits.  These
 exits allow you to insert site-dependent logic into the
 CA MICS IMS Daily Format routine (DYIMSFM1).

 The exits are:

 IMSRLRT, the IMS Relative Longevity Code Exit
 IMSACRT, the IMS Account Code Exit
 IMSAURT, the IMS Application Unit Exit

 They are explained in following sections of this guide.

 Important Concepts About These Exits
 ------------------------------------

 The exits are invoked in the order shown above.  This implies
 restrictions on your SAS logic.  For example, the IMSACRT
 exit cannot reference data element values set by the IMSAURT
 exit for the same transaction because the IMSACRT exit is
 invoked first.

 Each of the data elements contained in the IMS monitor data
 collection record are available to the exits.  In addition,
 some temporary data elements, not normally kept on the
 CA MICS IMS database, are available for examination in these
 exits.  The data elements available are discussed below.

 Several ways to recognize interesting transactions are shown
 here.  The following discussion assumes a general familiarity
 with IMS application design concepts.


 Identifying the Current Transaction
 -----------------------------------

 The following data elements identify the current transaction
 by the system, monitor, IMS version, and so on.

 CTLFILE   - (numeric) The ordinal of the input file in
             CA MICS IMS daily processing.  The first file
             processed is noted by CTLFILE=1, the second file
             processed has CTLFILE=2, and so on.

 CTLSYS    - (character, length 4) The original SYSID
             specified on the OPTIONS statement for this input
             file in the IMSOPS parameter member.

 CTLIMS    - (character, length 4) The IMSID specified on the
             OPTIONS statement for this input file in the
             IMSOPS parameter member.

 CTLMON    - (character, length to 6)
             NOCIMS - input is from the IMS log without
                      BMC MAINVIEW for IMS Online data
             IMF2   - input is from the IMS log with
                      BMC MAINVIEW for IMS Online data
                      present

 CTLVER    - (character, length 3) The IMS version number
             specified on the OPTIONS statement for this input
             file in the IMSOPS parameter member.  Values may
             be 6.1 through 13.1.

 MATYPE    - (character, length 2) For non-BMC MAINVIEW for
             IMS Online systems only.

             Set to indicate full-function or Fastpath data:
             FP - Fastpath (EMHB processed) transaction
             NF - non-Fastpath (non-EMHB processed)
                  transaction

 ISUITYPE  - (character, length 1)
             M for MPP transactions
             B for BMP transactions
             C for conversational transactions
             F for Fastpath message driven transactions
             N for Fastpath non-message driven transacts
             U for Fastpath utilities
             E for Explicit APPC
             D for DBCTL transactions
             J for Java MPP transactions
             K for Java BMP transactions
             (blank) when the execution method cannot be
                     determined

 TRANSACT  - (character, length 8) IMS transaction ID.

 LTERM     - (character, length 8) IMS logical terminal
             identifier.

 PSBNAME   - (character, length 8) IMS Program Specification
             Block (PSB) name.

 ISUCLASS  - (numeric) The internal class of a transaction as
             specified to IMS on the TRANSACT or APPLCTN macro
             in the IMS generation.  IMS uses this to
             determine which processing region should be used
             to schedule the transaction.

 ISUREGID  - (character) A temporary element containing the
             region identifier; available to user exits.

 Identifying Switched Transactions
 ---------------------------------

 This discussion applies only to non-BMC MAINVIEW for IMS
 Online full-function transactions.

 Assume transaction A switches to transaction B, and then B
 switches to transaction C, which writes a final output to the
 originating terminal.  Two data elements indicate the
 switching flow for the current transaction:

 TRANSWFR - (character, length 8) The transaction's parent;
            the name of the transaction that switched TO the
            current transaction.

 ALTTRAN  - (character, length 8) The transaction's child; the
            name of the transaction TO WHICH the current
            transaction switched.

 This table is based on the information above:

 Transaction  TRANSWFR value  ALTTRAN value
 -----------  --------------  -------------
      A          (blank)            B      (A was first in a
                                           switch chain, and
                                           switched to B)

      B             A               C      (B was switched to
                                           by A, and switched
                                           to C)

      C             B            (blank)   (C was switched to
                                           by b, and is last
                                           in the chain)

 In the IMSRLRT exit (relative longevity code), these
 statements identify the following transactions:

 IF TRANSWFR EQ ' ' AND ALTTRAN NE ' ' THEN ...

 identifies the first transaction in a switch chain.

 IF TRANSWFR NE ' ' AND ALTTRAN EQ ' ' THEN ...

 identifies the last transaction in a switch chain.

 IF TRANSWFR NE ' ' AND ALTTRAN NE ' ' THEN ...

 identifies a transaction in a switch chain that is neither
 first nor last.


 Identifying Multisystem Coupled (MSC) Transactions
 --------------------------------------------------

 This discussion applies only to non-BMC MAINVIEW for IMS
 Online full-function transactions.

 Multisystem coupling allows an IMS system to process
 transactions that were entered by an operator on a terminal
 that is connected to another IMS system.  The output of the
 transaction is usually sent back to the originating system
 for display on the originating terminal.

 Transactions that are MSC-eligible have an extra segment in
 the type 01 input message log record that identifies the MSC
 activity.  CA MICS makes the following temporary data element
 available for MSC identification:

 TRANXMSC  - (character, length 1)

             Y - The transaction was executed on behalf of a
                 terminal user connected to another IMS
                 system.

             L - The transaction is marked MSC-eligible and
                 executed on an IMS system where MSC was
                 active, but on behalf of a terminal user
                 connected to this IMS system.

             blank - The transaction has no MSC data.