Previous Topic: 10.1.2 General Exits

Next Topic: Appendix A. MESSAGES

10.1.3 Output Exits



This section provides a description of the Hardware and SCP
Analyzer standard user exits that are invoked during the
daily update processing flow.
+---------------+
| U S R S f f f | - File Selection Exits
+---------------+

DESCRIPTION:
   The USRSfff exits provide the ability to modify or select
   observations immediately prior to output.  The files
   available (fff) are:

   HAR   (fff)         SCP  (fff)          WLM  (fff)
          CCU                                    SDE
          CFC                ARD                 RGP
          CFD                ENQ                 SVC
          CFH                IOC                 SDS
          CFP                IOP                 _EW
          CFR                KRN                 SEA
          CFS                LCA                 _EA
          CPU                LCU                 SEC
          CRA                PAG                 _EC
          CRF                PSD                 SEM
          CRP                SRC                 _EM
          CVA                SWP                 SED
          DTA                TRC                 _ED
          DVA                VSM
          ELS                VSU
          ERS                XCA
          FDC                XCM
          FDP                XCY
          IPU
          LPC
          PCA
          PHY
          RRA
          RSV
          SGA
          VPA
          XPS

INVOCATION:
   These exits are invoked immediately before output of the
   file.

ACCOUNTING INTERFACE:
   No interface is provided.

USES:
   The exit allows elements to be modified and observations
   to be excluded from the output file.  To exclude an
   observation, set SKIP_REC to 1.

ELEMENTS AVAILABLE:
   All elements in the file are available.

CODING RESTRICTIONS:
   This exit must not issue the RETURN or DELETE statements,
   nor use a subsetting IF, since its invocation assumes the
   entire DATA step will be executed.

   For more information, see System Modification Guide,
   section 4.3.2.2.

SPECIAL NOTES:
   1. The USRSDVA and USRXDVA exits are both invoked during
      the initial output to the HARDVA Device Activity file.
      The USRSDVA follows the same conventions as all other
      raw data input exits, and any record subsetting affects
      not only the DETAIL, but all higher timespan files as
      well.

      The USRXDVA exit, however, only affects the DETAIL
      timespan HARDVA file.  You may restrict DETAIL HARDVA
      timespan reporting to only include specific devices or
      device types without any effect on higher HARDVA
      timespan files.

   2. The USRSCVA and USRSDVA user exits can be employed at
      either the detail and/or days levels.  The internal
      variable ROUTINE indicates the timespan on which
      the exit is operating:

      -  At DETAIL level, ROUTINE has the DYRMFFMT value.

      -  At DAYS level, ROUTINE has the #fffDSUM value,
         where fff is the file identifier (CVA or DVA).

USER EXIT SAMPLES:

   EXIT:  USRSDVA Device Activity File Exit

      This exit for the HARDVA file illustrates the ability
      to execute different code depending on which timespan
      it operates on.

      MACRO _USRSDVA
        SELECT(ROUTINE);
          WHEN('DYRMFFMT') /* SAS code for DETAIL */
          WHEN('#DVADSUM') /* SAS code for DAYS  */
          OTHERWISE;
        END;
        %

      This exit for the HARDVA file will only process Type 74
      Device Activity records for DASD or tape, and only
      those that have activity during the RMF interval.

      MACRO _USRSDVA
        /**********************************/
        /* Process only DASD or Tape.     */
        /* Do not process if no activity. */
        /**********************************/
         IF NOT (DEVCLASS='DASD' OR DEVCLASS='TAPE') OR
        (DVACNN=0 AND DVASSC=0) THEN SKIP_REC=ONE;
        %

      This exit for the HARDVA file will always set VOLSER to
      blanks for tape devices.

      MACRO _USRSDVA
        /**********************************/
        /* Set VOLSER to blanks if Tape.  */
        /**********************************/
        IF DEVCLASS='TAPE' THEN VOLSER=' ';
        %