$ListRem: Difference between revisions
(Automatically generated page update) |
(Automatically generated page update) |
||
Line 33: | Line 33: | ||
<li>[[List of $functions|Sirius functions]]</li> | <li>[[List of $functions|Sirius functions]]</li> | ||
<li>[[Fast/Unload User Language Interface]]</li> | <li>[[Fast/Unload User Language Interface]]</li> | ||
<li>[ | <li>[[Media:JoclrNew.pdf|Janus Open Client]</li> | ||
<li>[http://m204wiki.rocketsoftware.com/images/1/17/JosrvrNew.pdf Janus Open Server]</li> | <li>[http://m204wiki.rocketsoftware.com/images/1/17/JosrvrNew.pdf Janus Open Server]</li> | ||
<li>[[Janus Sockets]]</li> | <li>[[Janus Sockets]]</li> |
Revision as of 21:17, 19 February 2015
Remove item from $list
Note: Most Sirius $functions have been deprecated in favor of Object Oriented methods. The OO equivalent for the $ListRem function is RemoveItem.
This function removes an item from a $list, decrementing the item numbers of all items which follow.
The $ListRem function accepts two arguments and returns a numeric result. It is a callable $function.
The first argument is a $list identifier. This is a required argument.
The second argument is a number that specifies the item number in the $list. This is a required argument. The number of items remaining in the $list after the removal is returned as the result of this function. If removal of an item makes a CCATEMP $list page empty, that page is removed from use by the $list. Except for sorted lists which are only one page in size, space taken up by the removed item is made available on the $list page. If there are no items remaining after the removal, the $list is deleted.
Syntax
[%RESULT =] $ListRem(list_identifier, item_num)
%result is the number of items remaining in the $list after the removal, or is a negative number if an error has occurred.
Error codes
-5 - Required argument not specified -6 - $List identifier invalid -7 - Item number not found in $list
Usage notes
- Consecutive $list leaf pages that are made relatively empty with $ListRem will not be merged together. Because of this, heavy use of $ListIns and $ListRem can result in "sparse" $lists which place an unnecessary burden on the buffer pool and CCATEMP. It can also result in an inability to add an item to the end of the $list (via $ListAdd) because of a full pointer page, even though the $list is nowhere near the theoretical capacity for a $list. To make matters worse, $ListCpy does a page-for-page copy of a $list so does not result in any compression of the resultant $list. $List compression can be done using the $List_Copy_Items function.
Products authorizing $ListRem
- Sirius functions
- Fast/Unload User Language Interface
- [[Media:JoclrNew.pdf|Janus Open Client]
- Janus Open Server
- Janus Sockets
- Janus Web Server
- Japanese functions
- Sir2000 Field Migration Facility