$List Conv Item: Difference between revisions
mNo edit summary |
(Automatically generated page update) |
||
(42 intermediate revisions by 3 users not shown) | |||
Line 2: | Line 2: | ||
<span class="pageSubtitle">Convert $list to single delimited $list item</span> | <span class="pageSubtitle">Convert $list to single delimited $list item</span> | ||
<p class=" | <p class="warn"><b>Note: </b>Many $functions have been deprecated in favor of Object Oriented methods. The OO equivalent for the $List_Conv_Item function is the <var>[[CreateLines (Stringlist function)|CreateLines]]</var> function.</p> | ||
This function converts the contents of one $list into a separator delimited string which is overlayed on a single item of a second $list. | This function converts the contents of one $list into a separator delimited string which is overlayed on a single item of a second $list. | ||
$List_Conv_Item accepts four arguments and returns a numeric result. | <var>$List_Conv_Item</var> accepts four arguments and returns a numeric result. | ||
The first argument is the identifier of a $list to be converted into a separator delimited $list item. This is a required argument. | The first argument is the identifier of a $list to be converted into a separator delimited $list item. This is a required argument. | ||
Line 17: | Line 17: | ||
==Syntax== | ==Syntax== | ||
<p class="syntax">< | <p class="syntax"><span class="term">%result</span> = $List_Conv_Item(list_id1, list_id2, list_item2, separator) | ||
</p> | </p> | ||
<p class=" | <p> | ||
</p> | |||
<p><var class="term">%result</var> is set either to the number of $list items overlayed on a single item in the output $list, or to a negative error code if an error has occurred.</p> | |||
The target item in the output $list is cleared to blanks before the overlay is done. If the target item is too short to hold the input $list items, as many items and their trailing delimiters as will fit will be placed in the target item and the result of the $List_Conv_Item function will be the number of items copied. Put another way, no partial $list items will be placed into the target item. This means that a good test for success of this function is a comparison of the result of $List_Conv_Item with a [[$ListCnt]] of the input $list. | The target item in the output $list is cleared to blanks before the overlay is done. If the target item is too short to hold the input $list items, as many items and their trailing delimiters as will fit will be placed in the target item and the result of the <var>$List_Conv_Item</var> function will be the number of items copied. Put another way, no partial $list items will be placed into the target item. This means that a good test for success of this function is a comparison of the result of <var>$List_Conv_Item</var> with a [[$ListCnt]] of the input $list. | ||
<p class="code"> IF $List_Conv_Item(%LIST1, %LIST, %N) NE - | <p class="code"> IF $List_Conv_Item(%LIST1, %LIST, %N) NE - | ||
Line 88: | Line 88: | ||
with the third item only containing three separated entries because there was insufficient space for the item "DOES&CQ. and the item delimiter characters. %CNT would be set to 3 in this example. | with the third item only containing three separated entries because there was insufficient space for the item "DOES&CQ. and the item delimiter characters. %CNT would be set to 3 in this example. | ||
The delimiter separated string generated by $List_Conv_Item can be longer than 255 bytes up to 6124 bytes in | The delimiter separated string generated by <var>$List_Conv_Item</var> can be longer than 255 bytes up to 6124 bytes in <var class="product">[[Sirius Mods]]</var> Version 6.2 and later and 4096 bytes before. | ||
<p class="code"> | <p class="code"> | ||
Line 99: | Line 99: | ||
<p class="code"> | <p class="code"> | ||
==Products authorizing {{PAGENAMEE}}== | |||
<ul class="smallAndTightList"> | <ul class="smallAndTightList"> | ||
<li>[[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>[[Janus Open Client]]</li> | <li>[[Media:JoclrNew.pdf|Janus Open Client]]</li> | ||
<li>[[Janus Open Server]]</li> | <li>[[Media:JosrvrNew.pdf|Janus Open Server]]</li> | ||
<li>[[Janus Sockets]]</li> | <li>[[Janus Sockets]]</li> | ||
<li>[[Janus Web Server]]</li> | <li>[[Janus Web Server]]</li> | ||
<li> | <li>Japanese functions</li> | ||
<li>[[Sir2000 Field Migration Facility]]</li> | <li>[[Media:SirfieldNew.pdf|Sir2000 Field Migration Facility]]</li> | ||
</ul> | </ul> | ||
</p> | </p> | ||
<p | <p> | ||
</p> | </p> | ||
[[Category:$Functions|$List_Conv_Item]] | [[Category:$Functions|$List_Conv_Item]] |
Latest revision as of 22:51, 20 September 2018
Convert $list to single delimited $list item
Note: Many $functions have been deprecated in favor of Object Oriented methods. The OO equivalent for the $List_Conv_Item function is the CreateLines function.
This function converts the contents of one $list into a separator delimited string which is overlayed on a single item of a second $list.
$List_Conv_Item accepts four arguments and returns a numeric result.
The first argument is the identifier of a $list to be converted into a separator delimited $list item. This is a required argument.
The second argument is the identifier of a $list containing the item to be overlayed by the delimiter separated string generated from the first $list. This is a required argument.
The third argument is the number of the item from the second $list to be overlayed by the delimiter separated string generated from the first $list. This is a required argument.
The fourth argument is the delimiter character or characters to be used in the generated $list item string. It defaults to comma (",") and can be the null string. Specifying this argument as a null string is different from not specifying the argument at all since in the latter case it defaults to a comma.
Syntax
%result = $List_Conv_Item(list_id1, list_id2, list_item2, separator)
%result is set either to the number of $list items overlayed on a single item in the output $list, or to a negative error code if an error has occurred.
The target item in the output $list is cleared to blanks before the overlay is done. If the target item is too short to hold the input $list items, as many items and their trailing delimiters as will fit will be placed in the target item and the result of the $List_Conv_Item function will be the number of items copied. Put another way, no partial $list items will be placed into the target item. This means that a good test for success of this function is a comparison of the result of $List_Conv_Item with a $ListCnt of the input $list.
IF $List_Conv_Item(%LIST1, %LIST, %N) NE - $ListCnt(%LIST1) THEN ( error code ) END IF
For an example of the use of this function, suppose $list %LIST1 contained three items
LLL MMMMM NN
and %LIST2 contained two items
A,B,C, 123456789012345678901234567890
then
%CNT = $List_Conv_Item(%LIST1, %LIST2, 2)
will result in %LIST2 having 2 items
A,B,C, LLL,MMMMM,NN,
with the second item being blank padded to 30 characters. %CNT would be set to 3.
Suppose $list %LIST1 contained five items
EVERY GOOD BOY DOES FINE
and $list %LIST2 contained three items each padded to 22 characters.
1234567890123456789012 ***JUNK**** THE,ITSY,BITSY,SPIDER,
then
%CNT = $List_Conv_Item(%LIST1, %LIST2, 3, '++')
will result in %LIST2 having 3 items with each still padded to 22 characters.
1234567890123456789012 ***JUNK**** EVERY++GOOD++BOY++
with the third item only containing three separated entries because there was insufficient space for the item "DOES&CQ. and the item delimiter characters. %CNT would be set to 3 in this example.
The delimiter separated string generated by $List_Conv_Item can be longer than 255 bytes up to 6124 bytes in Sirius Mods Version 6.2 and later and 4096 bytes before.
-5 - Required argument not specified -6 - $List identifier invalid -7 - Invalid item number
Products authorizing $List_Conv_Item
- Sirius functions
- Fast/Unload User Language Interface
- Janus Open Client
- Janus Open Server
- Janus Sockets
- Janus Web Server
- Japanese functions
- Sir2000 Field Migration Facility