ListOfStrings (System function): Difference between revisions

From m204wiki
Jump to navigation Jump to search
m (Automatically generated page update)
 
m (Line up nicer)
 
(20 intermediate revisions by 6 users not shown)
Line 1: Line 1:
{{Template:System:ListOfStrings subtitle}}
{{Template:System:ListOfStrings subtitle}}
The <var>ListOfStrings</var> shared function returns a <var>[[Stringlist class|Stringlist]]</var> containing information about [[System class#System and subsystem globals and strings|system-wide strings]].


==Syntax==
==Syntax==
{{Template:System:ListOfStrings syntax}}
{{Template:System:ListOfStrings syntax}}
===Syntax terms===
===Syntax terms===
<table class="syntaxTable">
<table class="syntaxTable">
<tr><th>%stringlist</th><td>stringlist</td></tr>
<tr><th>%sl</th>
<tr><th>(System)</th>
<td>The <var>Stringlist</var> variable that contains the data about the global strings selected according to the pattern in <var class="term">string</var>.</td></tr>
<td>The class name in parentheses denotes a shared method. ListOfStrings can also be invoked via a System object variable, which may be null.</td></tr>
 
<tr><th><var class="nobr">%(System)</var></th>
<td>The class name in parentheses denotes a [[Notation conventions for methods#Shared methods|shared]] method. <var>ListOfStrings</var> can also be invoked via a <var>System</var> object variable, which may be <var>null</var>.</td></tr>
 
<tr><th>string</th>
<tr><th>string</th>
<td><var>String</var> object</td></tr>
<td>An optional identifying string which may include wildcard characters.  Descriptions of the global strings whose names match the <var class="term">string</var> pattern are returned to the <var class="term">%sl</var> <var>Stringlist</var>.
<p>
This argument defaults to an asterisk (<tt>*</tt>), that is, all global strings, and its eligible wildcard characters are shown below:</p>
<table>
<tr><th>*</th>
<td>Matches any group of 0 or more characters</td></tr>
 
<tr><th>?</th>
<td>Matches any single character</td></tr>
 
<tr><th>"</th>
<td>An escape, which means the next character is treated literally, even if it is a double quotation mark (<tt>"</tt>), question mark (<tt>?</tt>), or asterisk (<tt>*</tt>)</td></tr>
</table></td></tr>
</table>
</table>
==Usage notes==
==Usage notes==
<ul>
<li>All errors result in request cancellation.
<li>The items placed on the target <var>Stringlist</var> are put there in no particular order.
<li>The data returned to the <var>Stringlist</var> is in character format with the following contents:
<ul>
<li>Bytes 1-10 &mdash; Userid that last set the global.
<li>Bytes 12-28 &mdash; Date and time global last set, in YY/MM/DD HH:MI:SS format.
<li>Bytes 30-53 &mdash; Subsystem context for global. Null for system strings.
<li>Bytes 54-&nbsp; &mdash; Global name.
</ul>
<li>You can map to an image the information in each <var>Stringlist</var> item (described in the previous bullet) as follows:
<p class="code">image desc
  userid    is string len  11
  dateTime  is string len  18
  subsystem  is string len  24
  name      is string len 255
end image
</p>
Note that the image items are one byte longer than the item lengths indicated in the previous bullet. Those bytes would be blank, so standard trailing-blank stripping for image items will cause that extra blank to be stripped. The above image could then be used to map the entries, as follows:
<p class="code">%sl is object stringList
%i is float
%sl = %(subsystem):listOfStrings
identify image desc
%sl:[[BindImage (Stringlist subroutine)|bindImage]]('DESC')
for %i from 1 to %sl:count
  prepare image desc
  %sl:[[GetImage (Stringlist subroutine)|getImage]](%i)
  print %desc:userid and %desc:dateTime and -
        %desc:subsystem and %desc:name
end for
</p></ul>
==Examples==
==Examples==
The following statement prints the description of all system strings that end in <code>XML</code>:
<p class="code">%(system):listOfStrings('*.XML'):print</p>
==See also==
==See also==
{{Template:System:ListOfStrings footer}}
{{Template:System:ListOfStrings footer}}

Latest revision as of 22:15, 22 October 2015

List of system strings (System class)

The ListOfStrings shared function returns a Stringlist containing information about system-wide strings.

Syntax

%sl = %(System):ListOfStrings[( [string])]

Syntax terms

%sl The Stringlist variable that contains the data about the global strings selected according to the pattern in string.
%(System) The class name in parentheses denotes a shared method. ListOfStrings can also be invoked via a System object variable, which may be null.
string An optional identifying string which may include wildcard characters. Descriptions of the global strings whose names match the string pattern are returned to the %sl Stringlist.

This argument defaults to an asterisk (*), that is, all global strings, and its eligible wildcard characters are shown below:

* Matches any group of 0 or more characters
? Matches any single character
" An escape, which means the next character is treated literally, even if it is a double quotation mark ("), question mark (?), or asterisk (*)

Usage notes

  • All errors result in request cancellation.
  • The items placed on the target Stringlist are put there in no particular order.
  • The data returned to the Stringlist is in character format with the following contents:
    • Bytes 1-10 — Userid that last set the global.
    • Bytes 12-28 — Date and time global last set, in YY/MM/DD HH:MI:SS format.
    • Bytes 30-53 — Subsystem context for global. Null for system strings.
    • Bytes 54-  — Global name.
  • You can map to an image the information in each Stringlist item (described in the previous bullet) as follows:

    image desc userid is string len 11 dateTime is string len 18 subsystem is string len 24 name is string len 255 end image

    Note that the image items are one byte longer than the item lengths indicated in the previous bullet. Those bytes would be blank, so standard trailing-blank stripping for image items will cause that extra blank to be stripped. The above image could then be used to map the entries, as follows:

    %sl is object stringList %i is float %sl = %(subsystem):listOfStrings identify image desc %sl:bindImage('DESC') for %i from 1 to %sl:count prepare image desc %sl:getImage(%i) print %desc:userid and %desc:dateTime and - %desc:subsystem and %desc:name end for

Examples

The following statement prints the description of all system strings that end in XML:

%(system):listOfStrings('*.XML'):print

See also