Return codes, set in the panel user exit routine, recognized by
ISPF are:
- 0
- Successful operation.
- 8
- Exit-defined failure. ISPF sets the .MSG control variable and
displays or redisplays the panel with the message.
- 20 (or code unrecognized by ISPF)
- Severe error in the exit routine.
For an exit routine return code of 8, ISPF sets the .MSG control
variable by using this search order:
- If the value in the Message ID parameter is not blank on return
to ISPF, that value is used for setting the .MSG control variable.
- If the value in the Message ID parameter is blank on return, the
value (if any) specified for the MSG= keyword on the PANEXIT statement
is used for setting the .MSG control variable.
- If neither the Message ID parameter nor the MSG= keyword has been
given a value, the default ISPF exit error message is used for setting
the .MSG control variable.
The panel section in which the .MSG control variable is set affects
the message display as follows:
- )INIT or )REINIT section: the message is displayed on the panel.
- )PROC section: the panel, including the message to be displayed,
is redisplayed.
If the return code from the exit routine is either 20 or not one
of the recognized codes, the display service terminates with a severe
error condition. ISPF sets the ZERRMSG system variable by using this
search order:
- If the value in the Message ID parameter is not blank on return
to ISPF, it is used for setting the ZERRMSG system variable. This
allows the exit routine to define the message to be used in case of
a severe error.
- If the value in the Message ID parameter is blank on return, the
value (if any) specified for the MSG= keyword on the PANEXIT statement
is used for setting the ZERRMSG system variable.
- If neither the Message ID parameter nor the MSG= keyword has been
given a value, the default ISPF exit error message is used for setting
ZERRMSG.
If CONTROL ERRORS CANCEL is in effect, ISPF displays on the severe
error panel the message indicated by the value of ZERRMSG.