$AlphNum: Difference between revisions
m (Fix the French letters) |
m (misc cleanup) |
||
Line 1: | Line 1: | ||
<p>The $AlphNum function verifies whether a string is composed only of characters which are valid in the specified (or default) language, and digits 0 through 9. A 1 is returned if the condition is true; otherwise, a 0 is returned (for a false condition). A 0 is returned if there are any spaces or punctuation marks in the string, or if the string is null. </p> | <p> | ||
The <var>$AlphNum</var> function verifies whether a string is composed only of characters which are valid in the specified (or default) language, and digits 0 through 9. A 1 is returned if the condition is true; otherwise, a 0 is returned (for a false condition). A 0 is returned if there are any spaces or punctuation marks in the string, or if the string is null. </p> | |||
<p class=" | |||
==Syntax== | |||
<p class="syntax">$AlphNum(<span class="term">string</span>[,<span class="term">language</span>]) | |||
</p> | </p> | ||
<p> | <p> | ||
< | Where:</p> | ||
<ul> | |||
<li>The <var class="term">string</var> argument represents the characters to verify, which must be one of the following: | |||
<ul> | <ul> | ||
<li>A string of characters enclosed in quotation marks.</li> | <li>A string of characters enclosed in quotation marks.</li> | ||
<li>A %variable.</li> | <li>A %variable.</li> | ||
<li>A field name that is not enclosed in quotation marks. In this case, the function call must be embedded in a FOR EACH RECORD loop where the current value of the field is verified.</li> | <li>A field name that is not enclosed in quotation marks. In this case, the function call must be embedded in a <var>FOR EACH RECORD</var> loop where the current value of the field is verified.</li> | ||
</li> | </ul></li> | ||
</ul> | </ul> | ||
< | |||
<li>The optional <var class="term">language</var> argument specifies the language to use. The language argument is handled as follows: | |||
<ul> | <ul> | ||
<li> | <li>If the <var class="term">language</var> argument is omitted, <var class="product">Model 204</var> performs the validation in U.S. English, even if the value of the <var>LANGUSER</var> parameter is not US, and lowercase characters are not recognized.</li> | ||
<li>An asterisk enclosed in quotation marks ('*') instructs <var class="product">Model 204</var> to use the value of the | <li>An asterisk enclosed in quotation marks (<tt>'*'</tt>) instructs <var class="product">Model 204</var> to use the value of the <var>LANGUSER</var> parameter. | ||
</li> | </li> | ||
<li>You can enter the name of a valid language enclosed in quotation marks or a %variable containing a valid language. If the value you enter is not supported, the request is canceled with an error message. See the <var>[[LANGUSER parameter|LANGUSER]]</var> parameter for the valid values.</li> | |||
</ul> | </ul> | ||
<p>The following example illustrates the string and language arguments as literals enclosed in quotation marks:</p> | ==Examples== | ||
<p> | |||
The following example illustrates the string and language arguments as literals enclosed in quotation marks:</p> | |||
<table> | <table> | ||
<tr class="head"> | <tr class="head"> | ||
Line 29: | Line 36: | ||
<th>Returns...</th> | <th>Returns...</th> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td> | <td> | ||
<p class=" | <p class="codeInTable">$alphnum ('JOHN','US') | ||
</p></td> | </p></td> | ||
<td align="right">< | <td align="right"><p>1</p></td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td> | <td> | ||
<p class=" | <p class="codeInTable">$alphnum ('MÂCON','FRENCHC') | ||
</p></td> | </p></td> | ||
<td align="right">< | <td align="right"><p>1</p></td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td> | <td> | ||
<p class=" | <p class="codeInTable">$alphnum ('MÂCON','US') | ||
</p></td> | </p></td> | ||
<td align="right">0</td> | <td align="right"><p>0</p></td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td> | <td> | ||
<p class=" | <p class="codeInTable">$alphnum ('JOHN SMITH','US') | ||
</p></td> | </p></td> | ||
<td align="right">< | <td align="right"><p>0</p></td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td> | <td> | ||
<p class=" | <p class="codeInTable">$alphnum ('ÎLE D'ORLÉANS','FRENCHC') | ||
</p></td> | </p></td> | ||
<td align="right">< | <td align="right"><p>0</p></td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td> | <td> | ||
<p class=" | <p class="codeInTable">$alphnum ('12A','US') | ||
</p></td> | </p></td> | ||
<td align="right">< | <td align="right"><p>1</p></td> | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
<td> | <td> | ||
<p class=" | <p class="codeInTable">$alphnum ('12A','FRENCHC') | ||
</p></td> | </p></td> | ||
<td align="right">< | <td align="right"><p>1</p></td> | ||
</tr> | </tr> | ||
</table> | </table> | ||
<p>In the following example, the request sorts by name and processes records whose designated field value does not meet the $AlphNum criteria. The second argument in the $AlphNum call instructs <var class="product">Model 204</var> to use French Canadian to perform the validation:</p> | <p> | ||
In the following example, the request sorts by name and processes records whose designated field value does not meet the <var>$AlphNum</var> criteria. The second argument in the <var>$AlphNum</var> call instructs <var class="product">Model 204</var> to use French Canadian to perform the validation:</p> | |||
<p class="code">BEGIN | <p class="code">BEGIN | ||
%SEARCH = $READ('ENTER FIELD NAME') | %SEARCH = $READ('ENTER FIELD NAME') | ||
Line 86: | Line 101: | ||
SORT.RECS: SORT RECORDS ON LIST BAD BY FULLNAME | SORT.RECS: SORT RECORDS ON LIST BAD BY FULLNAME | ||
FOR EACH RECORD IN SORT.RECS | FOR EACH RECORD IN SORT.RECS | ||
. | . . . | ||
END | END | ||
</p> | </p> | ||
<p class="note"><b>Note:</b> For upward compatibility reasons, $Alpha and $AlphNum do not recognize lowercase English letters as alphabetic characters unless a non-null language parameter is specified.</p> | |||
<p class="note"><b>Note:</b> For upward compatibility reasons, <var>$Alpha</var> and <var>$AlphNum</var> do not recognize lowercase English letters as alphabetic characters unless a non-null language parameter is specified.</p> | |||
[[Category:SOUL $functions]] | [[Category:SOUL $functions]] |
Revision as of 20:28, 9 March 2015
The $AlphNum function verifies whether a string is composed only of characters which are valid in the specified (or default) language, and digits 0 through 9. A 1 is returned if the condition is true; otherwise, a 0 is returned (for a false condition). A 0 is returned if there are any spaces or punctuation marks in the string, or if the string is null.
Syntax
$AlphNum(string[,language])
Where:
- The string argument represents the characters to verify, which must be one of the following:
- A string of characters enclosed in quotation marks.
- A %variable.
- A field name that is not enclosed in quotation marks. In this case, the function call must be embedded in a FOR EACH RECORD loop where the current value of the field is verified.
- If the language argument is omitted, Model 204 performs the validation in U.S. English, even if the value of the LANGUSER parameter is not US, and lowercase characters are not recognized.
- An asterisk enclosed in quotation marks ('*') instructs Model 204 to use the value of the LANGUSER parameter.
- You can enter the name of a valid language enclosed in quotation marks or a %variable containing a valid language. If the value you enter is not supported, the request is canceled with an error message. See the LANGUSER parameter for the valid values.
Examples
The following example illustrates the string and language arguments as literals enclosed in quotation marks:
Function code... | Returns... |
---|---|
$alphnum ('JOHN','US') |
1 |
$alphnum ('MÂCON','FRENCHC') |
1 |
$alphnum ('MÂCON','US') |
0 |
$alphnum ('JOHN SMITH','US') |
0 |
$alphnum ('ÎLE D'ORLÉANS','FRENCHC') |
0 |
$alphnum ('12A','US') |
1 |
$alphnum ('12A','FRENCHC') |
1 |
In the following example, the request sorts by name and processes records whose designated field value does not meet the $AlphNum criteria. The second argument in the $AlphNum call instructs Model 204 to use French Canadian to perform the validation:
BEGIN %SEARCH = $READ('ENTER FIELD NAME') FIND.RECS: FIND ALL RECORDS FOR WHICH RECTYPE = POLICYHOLDER END FIND PLACE RECORDS IN FIND.RECS ON LIST BAD FOR EACH RECORD IN FIND.RECS IF $alphnum(%%SEARCH,'FRENCHC') THEN REMOVE RECORD FROM LIST BAD END IF END FOR SORT.RECS: SORT RECORDS ON LIST BAD BY FULLNAME FOR EACH RECORD IN SORT.RECS . . . END
Note: For upward compatibility reasons, $Alpha and $AlphNum do not recognize lowercase English letters as alphabetic characters unless a non-null language parameter is specified.