WRITE
|
[(rep)] [TRAILER
LEFT [JUSTIFIED ]]
[UNDERLINED ]
|
||||||||
[(statement-parameters )] | |||||||||
nX
|
'text' [(attributes)] | ||||||||
nT |
'c'(n) [(attributes)] | ||||||||
x/y
|
['='] operand1 [(parameters)] | ||||||||
[SKIP
operand2
[LINES ]]
|
This document covers the following topics:
For an explanation of the symbols used in the syntax diagram, see Syntax Symbols.
Related Statements: AT END OF PAGE | AT TOP OF PAGE | CLOSE PRINTER | DEFINE PRINTER | DISPLAY | EJECT | FORMAT | NEWPAGE | PRINT | SKIP | SUSPEND IDENTICAL SUPPRESS | WRITE | WRITE TITLE
Belongs to Function Group: Creation of Output Reports
The WRITE TRAILER
statement is used to output text or the
contents of variables at the bottom of a page.
See also the following sections (in the Programming Guide):
This statement is non-procedural, that is, its execution depends on an event, not on where in a program it is located.
This statement is executed when an end-of-page or end-of-data condition
is detected, or when a SKIP
or NEWPAGE
statement
causes a page advance. It is not executed as a result of an
EJECT
statement.
The end-of-page condition is checked only after the processing of an
entire DISPLAY
/WRITE
statement. If a
DISPLAY
/WRITE
statement produces multiple lines of
output, overflow of the physical page may occur before the end-of-page
condition is reached.
If a report is produced by statements in different objects, the
WRITE TRAILER
statement is only executed if it is contained in the
same object as the statement that causes the end-of-page condition.
The logical page size (specified with the session parameter
PS
) should be
less than the physical page size to ensure that the trailer information appears
at the bottom of the same page.
WRITE TRAILER
may be specified only once per report.
WRITE TRAILER
cannot be specified within a special
condition statement block.
WRITE TRAILER
cannot be specified within a
subroutine.
Operand Definition Table:
Operand | Possible Structure | Possible Formats | Referencing Permitted | Dynamic Definition | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
operand1 | S | A | G | N | A | U | N | P | I | F | B | D | T | L | G | O | yes | no | ||
operand2 | C | S | N | P | I | B | yes | no |
Syntax Element Description:
(rep) |
Report Specification:
If multiple reports are to be produced, the
notation
As report identification, a value in the range 0 - 31 or a logical
name which has been assigned using the If For information on how to control the format of an output report created with Natural, see Controlling Data Output (in the Programming Guide). |
---|---|
Title Justification and/or Underlining:
By default, the trailer lines are centered and not underlined.
If Natural first applies all spacing or tab specifications and creates
the line before centering the whole line. For example, a notation of
|
|
statement-parameters |
Parameter Definition at Statement Level:
One or more parameters, enclosed within parentheses, may be
specified at statement level, that is, immediately after the If more than one parameter is specified, one or more blanks must be present between each entry. An entry may not be split between two statement lines. Note: For information on which parameters may be used, see
List of
Parameters (in the |
nX |
Format Notation and Spacing Elements:
See Format Notation and Spacing Elements (below). |
'text' |
Text/Attribute Assignments:
See Text/Attribute Assignments (below). |
operand1 |
Trailer Information:
operand1 represents the field/fields to be output as trailer information. Arrays with ranges that allow to vary the number of occurrences at execution time may not be specified. |
parameters |
Parameter Definition at Element (Field) Level:
One or more parameters, enclosed within parentheses, may be
specified at element (field) level, that is, immediately after
operand1. Each parameter specified in this manner
will override the corresponding parameter previously specified
at statement
level or in a If more than one parameter is specified, one or more blanks must be present between each entry. An entry may not be split between two statement lines. For information on which parameters may be used, see
List of
Parameters (in the |
SKIP operand2 LINES |
Lines to Be Skipped:
Note: |
nX |
Column Spacing:
This notation inserts n spaces between columns. n must not be zero. |
---|---|
nT |
Tab Setting:
The |
x/y |
x/y Positioning:
Causes the next element to be placed x lines below the output of the last statement, beginning in column y. y must not be zero. Backward positioning in the same line is not permitted. |
'text' |
Text Assignment:
The character string enclosed by single quotes is displayed. |
---|---|
'c'(n) |
Character Repetition:
The character enclosed by single quotes is displayed n times immediately before the field value. |
attributes |
Field Representation and Color Attributes:
It is possible to assign various attributes for text/field display. These attributes and the syntax that may be used are described in the section Output Attributes below. Examples: WRITE TRAILER 'TEXT' (BGR) WRITE TRAILER 'TEXT' (B) WRITE TRAILER 'TEXT' (BBLC) |
attributes indicates the output attributes to be used for text display. Attributes may be:
|
||||
AD-value
|
For the possible session parameter values, refer to the corresponding sections in the Parameter Reference documentation:
Note:
The compiler actually accepts more than one attribute value for an
output field. For example, you may specify: AD=BDI
. In such a
case, however, only the last value applies. In the given example, only the
value I
will become effective and the output field will be
displayed intensified.
** Example 'WTLEX1': WRITE (with TRAILER option) ************************************************************************ DEFINE DATA LOCAL 1 EMPL-VIEW VIEW OF EMPLOYEES 2 NAME 2 FIRST-NAME 2 CITY 2 JOB-TITLE END-DEFINE * FORMAT PS=15 WRITE TITLE LEFT JUSTIFIED UNDERLINED *TIME 3X 'PEOPLE LIVING IN BARCELONA' 14X 'PAGE:' *PAGE-NUMBER SKIP 1 * WRITE TRAILER LEFT JUSTIFIED UNDERLINED / 'CITY OF BARCELONA REGISTER' * LIMIT 10 FIND EMPL-VIEW WITH CITY = 'BARCELONA' DISPLAY NAME FIRST-NAME 3X JOB-TITLE END-FIND END
09:36:09.5 PEOPLE LIVING IN BARCELONA PAGE: 1 ------------------------------------------------------------------------------- NAME FIRST-NAME CURRENT POSITION -------------------- -------------------- ------------------------- DEL CASTILLO ANGEL EJECUTIVO DE VENTAS GARCIA M. DE LAS MERCEDES SECRETARIA GARCIA ENDIKA DIRECTOR TECNICO MARTIN ASUNCION SECRETARIA MARTINEZ TERESA SECRETARIA YNCLAN FELIPE ADMINISTRADOR FERNANDEZ ELOY OFICINISTA TORRES ANTONI OBRERA CITY OF BARCELONA REGISTER -------------------------------------------------------------------------------
09:37:26.0 PEOPLE LIVING IN BARCELONA PAGE: 2 ------------------------------------------------------------------------------- NAME FIRST-NAME CURRENT POSITION -------------------- -------------------- ------------------------- RODRIGUEZ VICTORIA SECRETARIA GARCIA GERARDO INGENIERO DE PRODUCCION CITY OF BARCELONA REGISTER -------------------------------------------------------------------------------