Previous Topic: FOOTER Control StatementNext Topic: DEFINE Control Statement


ALTER Control Statement

The ALTER control statement allows you to change program defaults. Multiple ALTER control statements may be specified. The format for the ALTER control statement is:

          [           {nnXppp     }]  [     {NO  }] ALTER     [PRINTIMAGE={defaultX132}]  [DSNB={YES }]                                       [     {FAST}] [      {anyname1}]          [    {SCAN  }]           [INPUT={TMC     }]          [RUN={TOTALS}]

Control Statement Definition

ALTER

Identifies the control statement. It must be followed by a space.

PRINTIMAGE={nnXppp|defaultX132}

The value of nn defines the number of lines per page, including titles, and must be two digits. The TMSPRINT LC (line count) default is 55 lines per page. The value of ppp defines the character width of the paper. If specified, ppp must be three digits, the value of which is less than or equal to 132. If the lines per page or the print positions are to be changed, both values must be specified. For example:
PRINTIMAGE=40X132.

DSNB={NO|YES|FAST}

Specifies whether used DSNBs for the secondary files are to be merged in at read time. The default is NO.

If DSNB=YES is specified, for each used DSNB record a YSVC call is made to retrieve volume information to be combined with the DSNB information. The DSNB fields are accessed by specifying the TMC equivalent keyword. The F1STVSN value is mapped into the VOLSER field so that reports will display the VOLSER on which the data set actually begins. Fields such as OUTCODE, OUTDATE and ACCT are available for the DSNB data sets.

DSNB=YES can be used only with the production TMC. If an ALTER INPUT= is found indicating another file, the logic will change to DSNB=FAST.

Note: DSNB=YES will have an increase in processing time due to the YSVC call. DSNB field not reported is PREV.

If DSNB=FAST is specified, each DSNB field is moved into the corresponding TMC record field. If there is no corresponding TMC record field, an asterisk (*) is moved to that field on the report. The DSNB fields are accessed by specifying the TMC equivalent keyword. NUMDSNB is changed to represent the file sequence number, not the number of secondary data sets. 1STDSNB is changed to represent the DSNB number in the NEXT field. FLAG1 represents the FLAG1 of the DSNB (see the Programming Guide for the definition of the flag bits). If the NUMDSNB keyword, which indicates the file sequence number, is not used to distinguish between volume records and DSNBs, it is assumed that no record specific flag handling is desired, and only the corresponding flag bits are moved from the DSNB FLAG1 into the volume FLAG1. The corresponding bits are:

X'80'

TMINTAL

DSNBUSRU

Rec updated by user

X'10'

TMABEND

DSNBABND

File closed by abend

X'01'

TMDFAULT

DSNBDFLT

RDS override enabled

If the NUMDSNB keyword is found on any WHEN statement, the entire DSNB FLAG1 is moved unchanged.

Note: Fields not copied from DSNB records using DSNB=FAST are F1STVSN and PREV.

INPUT=anyname1

Specifies the input ddname. This expression is only required if anyname1 is not TMC or CA 1 is not active. If neither INPUT= or anyname1 DD statement is included, the active TMC is dynamically allocated and used as input.

RUN={SCAN|TOTALS}

Modifies the processing logic of TMSGRW.

SCAN

Performs only a syntax scan of the control statements.

TOTALS

Allows the program to produce only the total number of records selected without producing a detail report. This option supersedes any instruction in the REPORT-SECTION.