$ListSavL
Count and names of available global $lists
Note: Most Sirius $functions have been deprecated in favor of Object Oriented methods. The OO equivalent for the $ListSavL function is the PersistentObjectInfo class which returns information about global and session objects allocated to a thread.
This callable function retrieves the count of items in, and names of, the $lists for which both of these are true:
- Saved by the $List_Global, $ListSav, or $ListSave function
- Not, in the current request, restored by $ListRst
The $ListSavL function accepts one argument and returns a numeric error code.
Syntax
[%result =] $ListSavL(list_identifier)
- %result is a non-negative number indicating the number of saved $lists, or it is a negative error code.
- list_identifier is the identifier of the $list that is to receive the results. The current contents of the $list are deleted and replaced with the item count and names of available saved $lists.
Each $list item contains the 10-digit number of items, followed by a blank, followed by the name of a global $list not yet restored by $ListRst in the current SOUL request.
Return codes
>=0 – Count of saved $lists -3 – Not enough room to store list of counts and names -5 – Required argument not specified -6 – Invalid $list identifier
Example
The following procedure uses $ListSav to save information in various lists, and uses $ListSavL and $ListRst to display the saved lists:
B ... %RESULT = $ListSav(%LIST, 'name') ... END CLOSE ALL B %SAVED = $ListNew %RESULT = $ListSavL(%SAVED) FOR %I FROM 1 TO $ListCnt(%SAVED) %N = $ListInf(%SAVED, %I, 1, 10) %NAME = $ListInf(%SAVED, %I, 12) PRINT %N ' items in ' %NAME ':' %LIST = $ListRst(%NAME) FOR %J FROM 1 TO %N PRINT $ListInf(%LIST, %J) END FOR END FOR END