NET/MASTER Network Control Language (NCL) Reference Manual

PANEL
Verbs
106126 Tandem Computers Incorporated 3–141
Any NCL procedure invoked from an OCS window may issue PANEL at any
time. When multiple NCL processes are executing in the same NCL processing
environment (invoked by the START command), any one of the NCL processes
may obtain control of the OCS window to display panels. To prevent another
NCL process from obtaining control of the window, the controlling NCL process
must use the CONTROL NOSHAREW option. This option specifies to other NCL
processes that this NCL process is not prepared to relinquish control of the
window. When the NCL process is prepared to relinquish control, it must use the
PANELEND verb. This verb allows any other NCL process to obtain access to the
OCS window for a panel display.
Synchronous Panels:
Synchronous panel display (the default) returns to the invoking NCL process
after the user has entered some input.
An attempt to display a panel that has not been defined, or has been
incorrectly defined, terminates the process with an error message. However,
by using CONTROL PANELRC, the process can receive notification, through
the &SYS.RETCODE system variable, that the required panel does not exist or
cannot be displayed due to syntax errors. If CONTROL PANELRC is
specified, the &SYS.RETCODE system variable is set to 16 on return from the
PANEL verb, and the variable &SYSMSG contains the text of the message that
describes the error. The NCL process can test the &SYS.RETCODE system
variable and adjust its processing accordingly.
See the return codes for synchronous panels, later in this section.
Asynchronous Panels:
Return code information is always provided for an asynchronous panel
display request, regardless of the setting of the PANELRC operand of the
CONTROL verb.
When an asynchronous panel returns control to the NCL process that invokes
it, the panel is not necessarily displayed. It bids for window ownership,
displaying the panel only when its bid is successful.
See the return codes for asynchronous panels, later in this section.