Previous Topic: Action=LOAD Class=TABLE

Next Topic: Action=VALIDATE Class=DATA


Action=NAVIGATE Class=PDOMAIN

This statement determines the next panel to be displayed. You determine the panel by specifying the direction of movement (backward or forward) and the number of panels to skip, or by specifying the name of the panel domain element.

This statement has the following format:

&CONTROL SHRVARS=($PV,pref,...pref)
-EXEC $CACALL      OPT=ACTION
                   ACTION=NAVIGATE
                   CLASS=PDOMAIN
                   NAME=‘APPL=application id
                          [TYPE={PUBLIC | PRIVATE}]
                          [USER=userid]
                          NAME=domain name’
                   [PARMS=‘[CURRENT=element name]
                           [NEXT={element name | *}]
                           [SKIP={1 | n}]
                           [LOAD={YES | NO}]’]
APPL=application id

Specifies the application identifier of the panel domain.

TYPE={PRIVATE | PUBLIC}

(Optional) Specifies the type of panel domain. Valid values are as follows:

PUBLIC

Public domain—available for general use.

PRIVATE

Private domain—owned by a specific user ID.

Note: If you do not specify TYPE or USER, the function attempts to find the panel domain definition owned by the invoking user ID. If unsuccessful, the function uses a public panel domain definition.

USER=userid

(Optional) (if TYPE=PRIVATE) Specifies the user ID of the user owning the PRIVATE panel domain.

Default: User ID of the user invoking the function

NAME=domain name

Specifies the name of the panel domain.

CURRENT=element name

(Optional) Specifies the current element. If this keyword is blank, the current element is assumed to be ##TOP## (if DIR=FORWARD) or ##END## (if DIR=BACKWARD).

Note: DIR or SKIP is mutually exclusive to NEXT. If you do not specify DIR, NEXT, and SKIP, the default is DIR=FORWARD and SKIP=1.

DIR={FORWARD | BACKWARD}

(Optional) Specifies the direction in which navigation is to occur.

Default: FORWARD

NEXT={element name | *}

(Optional) Specifies the next element to progress to. If blank, the next element is determined based upon the defined paths (from the current element) and the direction of travel. If an element name is specified, navigation occurs to this element if it is currently eligible. If ’*’ is specified, a pick list of all eligible elements in the domain (excluding the element specified in the CURRENT= keyword) is presented.

SKIP={1 | n}

(Optional) Specifies the number of times to perform a panel navigation. Use this parameter when the user specifies a numeric or MAX scroll amount.

Default: 1

Limits: 1 through 9999

LOAD={YES | NO}

(Optional) Specifies whether to load a domain if it is not currently loaded.

Default: YES

Input Variables

This statement contains variables with prefixes as specified in SHRVARS.

&$PVNESTnnn

Tracking variables used by CAS to maintain the last nnn elements visited in the current direction (up to 999 elements). These variables are supplied by CAS. Do not modify these variables.

&$PVCRITnnnn

Criteria variables containing the criteria used to specify eligible panel domain element types.

&$PVCRITTOTAL

The total number of criteria variables. The range is 0 through 9999.

Return Variables

This statement contains the following return variables:

&$PVELEMENT

The name of the next element to progress to.

&$PVPANEL

The name of the panel associated with the next element.

&$PVDESC

The description of the next element.

&$PVHELP

The name of the function-level help associated with the next element.

&$PVTYPE

The type (PANEL or TEXT) of the next element.

&$PVTITLE

The title of the next element (if type is TEXT).

&SYSMSG

System message. Contains the error message (for return code 8).

Feedback Codes

If a return code of 8 is set, then additional information is available as one of the following feedback codes, set in &$CAFDBK:

1

Definition not found

4

Canceled by user

5

End of sequence

6

Unable to obtain lock

8

Processing error

10

Nesting level exceeded

Example

The following statements identify the next panel for display following the panel in &$PVELEMENT. The panel domain is ZPRPROB in the application identified by ID ZPR. A private panel domain is used in preference to a public panel domain.

&CONTROL SHRVARS=($PV,ZPR)
-EXEC $CACALL   OPT=ACTION +
                ACTION=NAVIGATE +
                CLASS=PDOMAIN +
                NAME=‘APPL=ZPR +
                NAME=ZPRPROB’ +
                PARMS=‘CURRENT=&$PVELEMENT’