Report layout
The report layout consists of detail-line format definitions (lines 3 through 6) and top-of-page format definitions (lines 8 through 14), which are optional.
The following figure contains the layout for the sample report in Sample report.
In defining formats, you can perform the following actions:
- Define as many lines as you like
- Mix text and variables (line 9)
- Include counters in comments across the top (such as 123456789012345678 . . .) to help space titles and headings
You can place format definitions almost anywhere in the code. If you remove the top-of-page formatting, which consist of the title, page number, and column headings (any format definition that contains the word top as the second node), other utilities can use the generated report as input.
The product stores format definitions during report initialization and the WRITE instruction uses them.
Sample report layout
03 format. = ;
04 format.1 = ' @<<<<< @>>>>>>>>';
05 format.2 = ' vl.volid vl.freetrk';
06 format.3 = ' . '; /* end of format definition */
07 /* top of page format definition */
08 format.top.1 = ' ';
09 format.top.2 = ' @||||||||||||||||||||||||||||||||||| PAGE @<<<<';
10 format.top.3 = ' title rpt.page# ';
11 format.top.4 = ' ';
12 format.top.5 = ' VOLUME FREE TRK';
13 format.top.6 = ' ------ --------';
14 format.top.7 = ' . '; /* end of format definition */
Format names
In the sample report layout, line 3 specifies the word format as the stem, or format name.
The stem identifies both the top-of-page and detail-line format definitions, as the following table shows:
Format names
Type of format | Format of the format name | Example |
---|---|---|
Detail line | stem.number | format.1 |
Top of page | stem.top.number | format.top.1 |
The last line of each format definition ends with a single period (line 6 and line 14).
Reserved word
Do not use the reserved word suppress as a format name.
Format definitions
Each format definition contains one or more lines, called field lines.
If the definition extends to a second line, place the || concatenation operator at the end of the first line to append the next line.
Format | Description |
---|---|
Field Lines | A field line can contain any of the following items:
|
Field Holder | A field holder is an expression that begins with the @ symbol. A field line that contains a field holder must be followed immediately by a value line that specifies the variable that belongs in each field holder as in the following example: 04 format.1 = ' @<<<<< @>>>>>>>>'; (field line) 05 format.2 = ' vl.volid vl.freetrk'; (value line) In a field holder, the characters that follow the @ indicate field justification. The number of characters (including the @) indicate the field length. For example, @>>> indicates a four-character, right-justified field. Left angle brackets (<) indicate a left-justified field, and vertical bars after an @ symbol (@|||) indicate a centered field. |
Value Line | The value line specifies the variables that plug into the field holders--one variable for each field holder. Line 4 contains two field holders. Line 5, the corresponding value line, contains the variables, vl.volid and vl.freetrk, which represent the volume ID and the number of free tracks. |
Related topics