The panel-name and message-id parameters are optional. They are
processed as follows:
- If panel-name is specified and message-id is not specified, the
panel definition is retrieved, rows from the table are read, starting
at the CRP, to fill the screen, and the screen is displayed without
a message. Any information from previous TBDISPL calls, such as pending
scroll requests or pending selected rows, is cleared.
- If panel-name and message-id are both specified, the panel definition
is retrieved, rows from the table are read to fill the screen, and
the screen is displayed with the specified message.
- If panel-name is not specified and message-id is specified, the
current table display is overlaid with a message, without rebuilding
the screen or rereading the table.
- If neither panel-name nor message-id is specified, the processing
depends on whether there are selected rows remaining to be processed.
If no selected rows remain to be processed: If the application
user's last action was to:
- Press the Enter key, then rows from the table are again read to
fill the screen and the screen is redisplayed.
- Enter a scroll command, then the scroll function is now honored
by reading and displaying the appropriate rows from the table.
- Enter an END or RETURN command, then the CRP is set to TOP (zero)
and control returns to the function issuing the TBDISPL with a return
code of 8. If this occurs more than once in immediate succession,
a return code of 20 is issued, since the application can be in a loop.
If there are selected rows
remaining to be processed, the CRP is positioned to the first of these,
the row is retrieved from the table, and input fields from the selected
model set are stored.
Use the CONTROL service to save and
restore the environment when a TBDISPL series, in which panel-name
is not specified, is to be interrupted by another TBDISPL, DISPLAY,
BROWSE, or EDIT operation.
The CURSOR and CSRROW parameters are optional. Their processing
is as follows:
- If the CURSOR parameter is not specified but the CSRROW parameter
is specified, the cursor is placed on the first field in the specified
row.
- If the CURSOR parameter is specified, but the CSRROW parameter
is not specified or is specified with a value of zero, the current
value of the CRP determines the row location, and the cursor is placed
in this row on the field specified by the CURSOR parameter. A value
of zero in the CRP places the cursor on the command line.
- If neither the CURSOR nor the CSRROW parameter is specified, the
cursor is placed at the command field.
- If both the CURSOR and CSRROW parameters are specified, the cursor
is placed at the field specified by the CURSOR parameter within the
model set corresponding to the table row specified by the CSRROW parameter.
- Whenever the CSRROW parameter is specified without specifying
AUTOSEL(NO), the row is retrieved, even if the user did not modify
that row. This allows the dialog developer to force the user to correct
an error on that row before going on to process other rows.
- Any setting of the .CURSOR and the .CSRROW control variables done
in the panel definition takes precedence over the CURSOR and CSRROW
parameters.