9.99 GET_MULTVAR_LIST

Note: Built-In Function Rules     Usage Options

Retrieves a list of multilingual variables (*MTXT) and their value in the current language and returns them to the calling RDML function in a variable length working list.

This is a Specialized Built-In Function for use in a Development Environment only.

Arguments

No

Type

Req/ Opt

Description

Min Len

Max Len

Min Dec

Max Dec

1

A

Req

Positioning *MTXT variable. The returned list starts with the first *MTXT variable whose name is greater than the value passed in this argument.

1

20

 

 

 

Return Values

No

Type

Req/ Opt

Description

Min Len

Max Len

Min Dec

Max Dec

1

L

Req

Working list to contain *MTXT variable information.

List must not be more than:
32767 entries in Windows
9999 entries on IBM i.

The calling RDML function must provide a working list with an aggregate entry length of exactly 108 bytes.

Each returned list entry is formatted as follows:

From - To   Description

1 - 20   *MTXT variable name

21 - 98   *MTXT value in current language

99 - 108    << for future expansion >>

108

108

 

 

2

A

Opt

Last *MTXT variable in list Typically this value is used as the positioning argument on subsequent calls to this Built-In Function.

1

20

 

 

3

A

Opt

Return code.

OK = list returned partially or completely filled with *MTXT variable details. No more *MTXT variables exist beyond those returned in the list.

OV = list returned completely filled, but more *MTXT variables than could fit in the list exist. Typically used to indicate "more" *MTXT variables in page at a time style list displays.

NR = list was returned empty. Last *MTXT variable in the list is returned as blanks.

2

2

 

 

 

Example

A user wants to print a list of all *MTXT variables.

DEF_LIST      NAME(#MTXLST) FIELDS(#MTXNAM #MTXVAL #SPARE)      

              TYPE(*WORKING) ENTRYS(1000)     

**********    -Define the report layout-     

DEF_REPORT    PRT_FILE(QSYSPRT)     

DEF_HEAD      NAME(#HEAD01) FIELDS(#TEXT #PAGE . . . )     

DEF_LINE      NAME(#MTXPRT) FIELDS(#MTXNAM #MTXVAL)     

**********    -Set start *MTXT variable to blanks-     

CHANGE        FIELD(#MTXVAR) TO(*BLANKS)     

**********    -Get list of system variables-     

USE           BUILTIN(GET_MULTVAR_LIST) WITH_ARGS(#MTXVAR)

              TO_GET(#MTXLST)

**********    -Process list-     

SELECTLIST    NAME(#MTXLST)     

**********    -Print *MTXT variables-     

PRINT         LINE(#MTXPRT)     

ENDSELECT           

**********    -Close printer file-     

ENDPRINT