Exit Program for Conditioning Panel Items

An exit program may be called during condition evaluation for conditions specified on the EXPR attribute of the COND tag and the LINKWHEN and UNLESSn attributes of the LINK tag.

The exit program can be provided for those instances when the determination of user class or existence of an object is not sufficient.

The exit program is called during the evaluation of conditions on a panel. For hypertext link calls, this program will be run every time. When the CHKPGM function is specified on the COND tag, the EVAL attribute on the COND tag will determine when this program is called. A return code set by the exit program will indicate to UIM whether the CHKPGM function should be evaluated to true or false.

The default for the function will be false if the exit program cannot be called. A message will be displayed at the bottom of the panel in the case of an error on the call to the exit program.

If the exit program is being called to process a COND tag on a menu item in a *MENU object, the multiple parameter interface will always be used. The multiple parameter interface will always be used when processing the the LINKWHEN and UNLESSn attributes on a hypertext link also.


Single Parameter Interface

Structure level
BINARY(4); positions 1-4

The interface level supported by this structure, indicating which fields and values are available for the current interface level.

Reserved
CHAR(8); positions 5-12

Type of call
BINARY(4); positions 13-16

Set to the following value:

12 The exit program is called to evaluate the condition for the given panel group, menu, or hypertext link.

Application handle
CHAR(8); positions 17-24

The application handle of the application currently being processed by the UIM. This value will be set only when processing a *PNLGRP object. It will be set to blanks when the exit program is called for a *MENU object or LINK tag condition processing.

Object name
CHAR(10); positions 25-34

The name of the panel group or menu object being processed. If the exit program is called to process the condition on a LINKWHEN or UNLESSn attribute on a LINK tag, this field will contain the name of the panel group that contains the help identifier named in the LINK tag.

Library name
CHAR(10); positions 35-44

The name of the library containing the object being processed. If the exit program is called to process the condition on a LINKWHEN or UNLESSn attribute on a LINK tag, this field will contain the name of the library that contains the panel group named in the previous parameter.

Object type
CHAR(10); positions 45-54

The type of object (*MENU or *PNLGRP) being processed.

Help module name
CHAR(32); positions 55-86

The name of the help module being processed when the exit program is called to process the condition on a LINKWHEN or UNLESSn attribute on a LINK tag. When processing conditions on a menu or panel item, this field will be blank.

Panel name
CHAR(10); positions 87-96

The name of the panel being processed. This value will be blank when the exit program is called to process the condition on a LINKWHEN or UNLESSn attribute on a LINK tag.

Condition name
CHAR(10); positions 97-106

The name of the condition currently being evaluated. This is the name as it was entered on the COND NAME attribute of the panel group source. If the exit program is called to process the condition on a LINKWHEN or UNLESSn attribute on a LINK tag, this field will be set to blanks.

Return code
CHAR(1); position 107

Return code from exit program indicating true or false condition. If a value other than one of those listed below is returned, the condition will be set to false.

1 Condition of the CHKPGM function is true.
0 Condition of the CHKPGM function is false.

Multiple Parameter Interface

The description of parameters listed in the following table is the same as the corresponding field in the structure for a single parameter interface. The positions listed for each field in the structure do not apply to the multiple parameter interface.


  Parameters for interface level 1:

1 Type of call Input Binary(4)
2 Application handle Input Char(8)
3 Object name Input Char(10)
4 Library name Input Char(10)
5 Object type Input Char(10)
6 Help module name Input Char(32)
7 Panel name Input Char(10)
8 Condition name Input Char(10)
9 Return code Output Char(1)



Exit program introduced: V4R4
Top | User Interface Manager (UIM) APIs | APIs by category