SMF Spool Level Account Code Specification
The global account code exit routine, ACCTRTE, described in the ACCTRTE - Global Account Code Exit Routine section sets account codes (ACCTNOx) used for every
MICS database
observation written for the job, TSO session, started task, or the address space records from an APPC/MVS Transaction Program (TP).rm
The global account code exit routine, ACCTRTE, described in the CCTRTE - Global Account Code Exit Routine section sets account codes (ACCTNOx) used for every
MICS database
observation written for the job, TSO session, started task, or the address space records from an APPC/MVS Transaction Program (TP).MICS
allows you to override the global account code values set in ACCTRTE for individual SYSOUT records. Each SMF type 6 output writer record is written to the BATSPL file. Prior to output to the BATSPL file, the global ACCTNOx values are saved. You may add code to the USRSSPL exit to override the global ACCTNOx values based upon information in each individual SYSOUT observation. After writing to the BATSPL file, the global ACCTNOx values are restored.Note:
Implementation of any exit or modification should be made through the MICS
test database unit or test complex. If you use the test complex, it must be at the same maintenance level as your production complex. Implement the change, check the change thoroughly, and then move the change to the production shared libraries.Overriding Global ACCTNOx Values for Individual BATSPL Observation
To override ACCTNOx values set in the global account code exit routine, ACCTRTE, follow these steps:
- Modify the _USRSSPL macro code in #SMFEXIT to add logic to modify the account-level data elements ACCTNO1 to ACCTNOx for the output writer record. You may use any data element contained in the BATSPL file to set the ACCTNOx values.You may only want to override the global account codes for SYSOUT of a particular SYSOUT class, or that printed on a particular output device.An example of a spool-level accounting routine that only overrides the global account codes for SYSOUT printed to class 'Z' is shown below.MACRO _USRSSPL ... (existing exit code, if any) IF SYSOUT = 'Z' THEN DO; ACCTNO1='ABC' ; ACCTNO2='DEFGH' ; ... (logic appropriate to your purpose) END; ... %Note that the global ACCTNO3 account code is unchanged. ACCTNO1 and ACCTNO2 are only overridden if the SYSOUT class, (SYSOUT), value is 'Z'.
- Execute aMICS DAILYjob on theMICStest database unit. Provide test input data that contains output writer records with characteristics satisfying your spool-level accounting scheme.
- Examine the affected areas of theMICStest database completely. For a good comparison, examine data from a similar run without the modification. Make any corrections needed and retest until the desired results are obtained.
- After testing is complete, move the SMF exit member to sharedprefix.MICS.SOURCE in your production complex.