7.26.2 DEF_LIST Description
continued from 7.26 DEF_LIST
- An RDMLX browse list can only be used on the Web and in this context list use greatly impacts the response time in the browser. Client and server computing power and the size of the communication pipe will dictate what the practical limit is. In some configurations it can be as little as 1000 entries. Notice that a browse list is a static list. A static list allocates sufficient tracking information for the maximum number of entries specified. For small numbers of entries, such as 10,000, this tracking information is inconsequential. But, if millions of entries are required, it can become significant.
- Because of a limitation of generated field names for an HTML form, only 9999 entries can be used for input. Due of this limitation, for an RDMLX/RDML browse list used on the Web and which supports more than 9999 entries, the entries beyond 9999 are for output only.
- An RDMLX function can only use a browse list if it is web enabled.
- A static working list in an RDML object can contain up to the number of entries specified in the ENTRYS parameter which has a maximum of 9999. However, the aggregate entry length cannot exceed 256 bytes in a primary list. See the note in 7.26.3 DEF_LIST Comments / Warnings.
- A static working list in an RDMLX object can also contain up to the number of entries specified in the ENTRYS parameter which has a maximum of 2 giga entries. The aggregate entry length cannot exceed 2 Giga bytes in a primary list. Also, String and Binary data memory needs are on top of this as they are not stored in the list itself. Thus each entry could have many Strings each up to 64 Kbytes long. It is very easy to consume very large amounts of memory. See the note in 7.26.3 DEF_LIST Comments / Warnings.
- A dynamic working list in an RDMLX object allocates and releases memory on demand. Enter the value *MAX into the ENTRYS parameter. This is the kind of list recommended for use in an RDMLX object, though it has severe restrictions when used with the SORT_LIST command. The aggregate entry length cannot exceed 2 Giga bytes in a primary list. Also, String and Binary data memory needs are on top of this as they are not stored in the list itself. Thus each entry could have many Strings each up to 64 Kbytes long. It is very easy to consume very large amounts of memory, far beyond the capacities of today's computers. The memory management is described in 7.26.3 DEF_LIST Comments / Warnings.
The actual positioning of a browse list onto the workstation display depends upon the parameters used in the REQUEST, DISPLAY or POP_UP command that is used to display the list on the screen and on any field attributes used in the DEF_LIST command. For more details, refer to Field Attributes and their Use.
When a browse list is displayed at a workstation only the first "page" is displayed. A "page" is the number of entries that will fit on the screen. By using the ROLL UP and ROLL DOWN keys the user can browse backwards and forwards through all the pages in the list. This is why it is called a "browse" list.
Generally a browse list should only be used when the list entries are to be displayed at a workstation. Working lists, which cannot be directly displayed at a workstation, have 2 major advantages over browse lists. The first is that they can be processed much faster than browse lists, and the second is that they can be used in RDML programs running in batch.
Some of the other commands that work with or reference lists include:
Command
|
Description
|
Valid For Browse List
|
Valid For Working List
|
ADD_ENTRY
|
Add a new entry to a list.
|
YES
|
YES
|
UPD_ENTRY
|
Update an existing entry in a list
|
YES
|
YES
|
GET_ENTRY
|
Get an entry from a list
|
YES
|
YES
|
SELECTLIST
|
Process entries from a list in a loop
|
YES
|
YES
|
CLR_LIST
|
Clear all entries from a list
|
YES
|
YES
|
DLT_LIST
|
Delete a list
|
YES
|
YES
|
INZ_LIST
|
Initialise a list with "n" entries
|
YES
|
YES
|
DISPLAY
|
Display fields and optionally a list
|
YES
|
NO
|
REQUEST
|
Request fields and optionally a list
|
YES
|
NO
|
POP_UP
|
Display fields and optionally a list in a pop up window
|
YES
|
NO
|
LOC_ENTRY
|
Locate an entry in a list
|
NO
|
YES
|
SORT_LIST
|
Sort a list
|
NO
|
YES
|
DLT_ENTRY
|
Delete entry from a list
|
NO
|
YES
|
|