Audit (GenericNamedArraylist subroutine): Difference between revisions

From m204wiki
Jump to navigation Jump to search
mNo edit summary
Line 7: Line 7:
   
   
===Syntax terms===
===Syntax terms===
<table class="syntaxTable">
{{Template:PrintAuditTrace GenNamedArraylist syntax terms}}
<tr><th>anyNal</th>
<td>A <var>FloatNamedArraylist</var>, <var>NamedArraylist</var>, or <var>UnicodeNamedArraylist</var> object. </td></tr>
 
<tr><th>itemFunction</th>
<td>The method that is applied to <var class="term">anyNal</var> items to produce the displayed output. The method must take no parameters and produce an intrinsic (<var>Float</var>, <var>String</var>, <var>Unicode</var>) value. It may be a system or user-written method, a class <var>Variable</var> or <var>Property</var>, a [[Local_and_Common_entities#Defining_and_invoking_a_local_method|local method]], or a [[Method variables|method variable]].  The default value of <var class="term">itemFunction</var> is <var>ToString</var>. </td></tr>
<tr><th><var>NumWidth</var></th>
<td>The number of bytes in the display of each item to use for the item number. This is an optional, [[Methods#Named parameters|name required]], parameter; if you specify a value, the parameter name <var>NumWidth</var> is required.
<p>Item numbers are right-justified within the indicated number of bytes, and they are truncated on the left if the length of the item number exceeds the space allocated for it. The <var>NumWidth</var> value must be a number between <code>-1</code> and <code>10</code> inclusive. If you specify a value of <code>0</code>, the item number is not displayed.</p><p>If <var>NumWidth</var> is <code>-1</code>, the default, the method uses the minimum number of bytes required to show the item number. For example, one byte is required for item number 5, while five bytes are required for item number 98764.</p></td></tr>
<tr><th><var>Separator</var></th>
<td>A <var>String</var>, 15 characters or less, to be used to separate both the item number and the item name from what follows. That is, the <var class="term">string</var> you specify appears twice: once after the item number and once after the item name.
<p>This is an optional, name required, argument whose default is a colon followed by a space (<code>: </code>).</p> </td></tr>
<tr><th><var>Start</var></th>
<td>The item number of the initial item in the output display. This is an optional, name required, argument which defaults to <code>1</code>.</td></tr>
<tr><th><var>MaxItems</var></th>
<td>The maximum number of items to display. A zero or negative value means to display all the items from <var>Start</var> to the end of the <var class="term">anyNal</var>.
<p>This is an optional, name required, argument which defaults to zero.</p></td></tr>
<tr><th><var>Label</var></th>
<td>A string that gets output before each line. This is useful for "tagging" lines to make them more identifiable.
<p>This is an optional, name required, argument whose default is a null string. </p></td></tr>
<tr><th><var>NameWidth</var></th>
<td>The number of bytes in the display of the item name. This must be a number from -1 through 255. This is an optional, [[Methods#Named parameters|name required]] argument.
<p>Item names are left-justified within the indicated number of bytes, and they are truncated on the right if the length of the item name exceeds the space allocated for it. For a <var>UnicodeNamedArraylist</var>, the items names are converted to EBCDIC (using character encoding for untranslatable characters). This can result in names being truncated in the middle of a character encoding, as shown in "[[Collections#Examples of subscript display format for named collections|Examples of subscript display format for named collections]]"</p>
<p>The default is <code>-1</code>, which directs the method to use as many bytes as necessary to show the entire item name. For example, three bytes are required for item name <code>Foo</code>, while eight bytes are required for item name <code>Malmberg</code>. If you specify a value of <code>0</code>, the item name is not displayed.</p></td></tr>
</table>
   
   
<div id="Usage Notes"></div><!--In case there are old links to this-->
<div id="Usage Notes"></div><!--In case there are old links to this-->
==Usage notes==
==Usage notes==
<ul>
<ul>

Revision as of 21:44, 8 August 2012

Audit items (FloatNamedArraylist, NamedArraylist, and UnicodeNamedArraylist classes)


This subroutine displays the contents of a FloatNamedArraylist, NamedArraylist, or UnicodeNamedArraylist in a readable form, useful for debugging, for example. Audit is identical to Print, except the result is sent to the Model 204 audit trail (like the User Language Audit statement).

Syntax

anyNal:Audit[( [itemFunction], [NumWidth= number], [Separator= string], - [Start= number], [MaxItems= number], [Label= string], - [NameWidth= number])]

Syntax terms

anyNal A FloatNamedArraylist, NamedArraylist, or UnicodeNamedArraylist object.
itemFunction The method that is to be applied to anyNal items to produce the printed output. The itemFunction method must take no parameters and produce an intrinsic (Float, String, or Unicode) value. It may be a system or user-written method, a class Variable or Property, a local method, or a method variable.

The default value of itemFunction is ToString.

NumWidth The number of bytes in the display of each item to use for the item number. This is an optional, name required, parameter.

Item numbers are right-justified within the indicated number of bytes, and they are truncated on the left if the length of the item number exceeds the space allocated for it. NumWidth must be a number between -1 and 10 inclusive. If you specify a value of 0, the item number is not displayed.

If NumWidth is -1, the default, the method uses the minimum number of bytes required to show the item number. For example, one byte is required for item number 5, while five bytes are required for item number 98764.

Separator A string, 15 characters or less, to be used to separate both the item number and the item name from what follows. That is, the string you specify appears twice: once after the item number, and once after the item name.

This is an optional, name required, argument which defaults to a colon followed by a space (: ).

Start The item number of the initial item in the output display. This is an optional, name required, argument which defaults to 1.
MaxItems The maximum number of items to display. A zero or negative value means to display all the items from Start to the end of the anyNal.

This is an optional, name required, argument which defaults to zero.

Label A string that gets output before each line. This is useful for "tagging" lines to make them more identifiable.

This is an optional, name required, argument which defaults to a null string.

NameWidth The number of bytes in the display of the item name. This must be a number from -1 through 255. This is an optional, name required, argument.

Item names are left-justified within the indicated number of bytes, and they are truncated on the right if the length of the item name exceeds the space allocated for it. For a UnicodeNamedArraylist, the items names are converted to EBCDIC (using character encoding for untranslatable characters). This can result in names being truncated in the middle of a character encoding, as shown in "Examples of subscript display format for named collections"

The default is -1, which directs the method to use as many bytes as necessary to show the entire item name. For example, three bytes are required for item name Foo, while eight bytes are required for item name Malmberg. If you specify a value of 0, the item name is not displayed.

Usage notes

  • All errors in Print result in request cancellation.

Examples

For examples of Print method calls, see "Printing a collection".

See also

  • Print and Trace are the same as Audit except they send their output to the user's standard output and selected trace destinations, respectively.