Previous Topic: 7.2.2 Account Code Specification (WEBACCT)Next Topic: 7.3 Unit Level Parameters


7.2.3 Account Code Exit Routine (WEBACRT)


 
 This section explains how to code an account code exit for
 the CA MICS Web Analyzer.  These definitions will be used for
 every database unit that contains this analyzer.
 
 There are 4 files that contain an account code structure.
 The Data elements from the raw data are:
 
 File     File Name                         Source
 ------   -------------------------------   ----------------
 WLGSAL - HTTP Access Log File ------------ HTTP Server Log
 WEBSAF - WAS Server Activity File -------- SMF 120 Subtype 1
 WEBWRA - Web Request Activity File ------- SMF 120 Subtype 9
 WEBWAA - Web Asynch Activity File -------- SMF 120 Subtype 9
 
 After you define WEBACCT for the number of account codes you
 want to carry in the above listed files, code the Account
 Code Derivation Routine (WEBACRT) in sharedprefix.MICS.PARMS.
 WEBACRT is a SAS routine that derives the account code data
 elements during the DAY052 step.  For example, if you define
 three account codes in WEBACCT, then your WEBACRT exit must
 contain SAS code to derive the data elements WEBACT1,
 WEBACT2, and WEBACT3.  If you do not process the HTTP Server
 log or the SMF 120 Subtype 1 data, you do not need to include
 checks for those in the routine.
 
 Every element read from the raw input record is available to
 the WEBACRT routine whether it is written to the database or
 not.
 
 Possible elements from the SMF 120 subtype 9 record to base
 the account code derivations on might include (but not
 limited to):
 
     WRABT       Controller Jobname
     WRACR       Job Name for Dispatch Servant
     WEBRTYPE    Web Request Type
     WRAEK       Request Origin
     USER1-5*    User Data (temporary element)
     USERNO1-5   User Data Type (temporary element)
 
 * Temporary elements USER1 through USER5 contain the user
   data written to the SMF 120 subtype 9 record by a WAS API
   that possibly identifies some details on what the
   application is and the type or function of the web request
   being done by the application, which might be useful in
   assigning the account code fields.  This is a free form
   field and might require complex code to pick out the
   specific information needed.  There can be up to 5 of these
   user data sections in the record.  USER1 contains the value
   from the first user data section, USER2, the second, and so
   forth.  Each user data section is identified by a User Data
   Type which is in the corresponding data elements
   USER1-USER5.
 
 You are responsible for testing the accuracy of the exit
 routine.  The worksheet for coding the WEBACRT exit is shown
 in Figure 7-2.
 
 +--------------------------------------------------------------------------+
 | INSTALLATION PREPARATION WORKSHEET:  WEB Account Code Routine Definition |
 |                                                                          |
 | PARMS Library Member is WEBACRT                                          |
 | Reference Sections: 7.2.3  CA MICS WebSphere Analyzer Guide              |
 +--------------------------------------------------------------------------+
 | * CHECK INPUT SOURCE                                                     |
 | IF FILEID 'WEBWRA' THEN DO;             /* check the input source  */    |
 |                                                                          |
 |   IF { account data is valid } THEN DO; /* validate account codes  */    |
 |                                                                          |
 |     WEBACT1=field source 1 ;            /* populate the account    */    |
 |     WEBACTn=field source n ;            /* code fields             */    |
 |     ____________________________________________________________________ |
 |     ____________________________________________________________________ |
 |     ____________________________________________________________________ |
 |   END;                                                                   |
 | END;  /* end if waa fileid  */                                           |
 | ELSE IF FILEID 'WEBSAF' THEN DO;        /* check the input source  */    |
 |                                                                          |
 |   IF { account data is valid } THEN DO; /* validate account codes  */    |
 |                                                                          |
 |     WEBACT1=field source 1 ;            /* populate the account    */    |
 |     WEBACTn=field source n ;            /* code fields             */    |
 |     ____________________________________________________________________ |
 |     ____________________________________________________________________ |
 |     ____________________________________________________________________ |
 |   END;                                                                   |
 | END;  /* end if saf fileid  */                                           |
 | ELSE DO;                                                                 |
 |                                                                          |
 |     WEBACT1='overhead category' ;    /* Nothing qualifies, assign  */    |
 |     WEBACTn='overhead category' ;    /* to overhead                */    |
 |     ____________________________________________________________________ |
 |     ____________________________________________________________________ |
 |     ____________________________________________________________________ |
 |                                                                          |
 | END;                                                                     |
 +--------------------------------------------------------------------------+
 
 Figure 7-2.  WEB Account Code Routine Definition Worksheet