SMF SFHLIMIT Statement

The SFHLIMIT statement is optional. This statement, if specified, activates the Job Account Derivation Hold (BATSFH) file and controls how long observations stay in the file. The BATSFH file provides accountability for "late" SYSOUT. It also provides accountability for NJE SYSOUT when the
MICS
unit encountering the NJE SYSOUT SMF type 6 records has previously encountered and discarded the execution records for the creating job. The BATSFH file is described in the BATSFH - Job Account Derivation Hold File section. SYSOUT accountability issues are discussed in the SYSOUT Considerations section.
micsrm140
The SFHLIMIT statement is optional. This statement, if specified, activates the Job Account Derivation Hold (BATSFH) file and controls how long observations stay in the file. The BATSFH file provides accountability for "late" SYSOUT. It also provides accountability for NJE SYSOUT when the
MICS
unit encountering the NJE SYSOUT SMF type 6 records has previously encountered and discarded the execution records for the creating job. The BATSFH file is described in the BATSFH - Job Account Derivation Hold File section. SYSOUT accountability issues are discussed in the SYSOUT Considerations section.
The BATSFH file must be customized to meet your accounting needs prior to activation with the SFHLIMIT statement. Customizing the BATSFH file is discussed in the BATSFH File Customization section. You must also make sure your global account code exit routine (ACCTRTE) is designed to check the value of either the H_AUDIT or the ACCTINFO data elements. Coding the ACCTRTE exit is discussed in the ACCTRTE - Global Account Code Exit Routine section.
Once you have customized the BATSFH file and modified your ACCTRTE to make use of the BATSFH file observations, you need to add an SFHLIMIT statement to prefix.MICS.PARMS(SMFOPS).

The SFHLIMIT Statement Format

SFHLIMIT nn
where nn ranges from 0 to 20.
The default is SFHLIMIT 0.
The value of nn tells
MICS
the number of daily update cycles each BATSFH file observation should remain in the file. The value you choose for nn will depend on how long SYSOUT tends to remain in the JES spools before printing. An observation is written to the BATSFH file when
MICS
is about to discard the various SMF records for a particular job, TSO session, started task, or the address space records from an APPC/MVS Transaction Program (TP). Each BATSFH file observation contains the Reader Start Time (RDRTS), Job Name (JOB), and the job-level fields required by your global account code exit routine (ACCTRTE).
If you are reasonably sure that any NJE SYSOUT for a job will be printed within a week after job end, you should set nn to 7 or 8. The BATSFH File Usage Notes section shows how to fine-tune the SFHLIMIT argument value.

Specifying the SFHLIMIT option statement

To specify an SFHLIMIT option statement, follow these steps:
  1. Edit prefix.MICS.PARMS(SMFOPS).
  2. Insert a line as follows:
    SFHLIMIT nn
    where nn ranges from 0 to 20.
    Note:
    Specifying SFHLIMIT 0 has no affect. SFHLIMIT 0 is the default assumed by
    MICS
    if the SFHLIMIT option statement is not present in SMFOPS.
  3. Execute the job in prefix.MICS.CNTL(SMFPGEN). If the SFHLIMIT option statement is coded incorrectly, the job will abend. Correct the problem as explained in the MICSLOG and resubmit. Make sure the job completes with a condition code of zero. If your SMFOPS member does not contain an SFHLIMIT option statement, MICSLOG will tell you that the option is missing and that the default, SFHLIMIT 0, was used.

Tips and hints

The BATSFH file has only one function: to provide extended accountability for NJE SYSOUT and late SYSOUT. Before deciding to activate this file, see how much NJE and late SYSOUT is encountered in your environment. The BATSPL file data elements SPLNJESR and SPLLATE will be non-zero for any NJE and late SYSOUT encountered by
MICS
. If you rarely encounter NJE or late SYSOUT, you may not want to incur the additional processing and space requirements associated with the BATSFH file.