$ChkPat
The $ChkPat function verifies the syntax of a pattern. If the pattern is valid, a null string is returned; otherwise, an error message string is returned.
Syntax
$ChkPat(pattern[,language])
Where:
- The required pattern argument is the string of characters to verify, which can be a literal enclosed in quotation marks or a %variable.
See the description of SOUL patterns.
- The optional language argument specifies the language to use. The language argument is handled as follows:
- If language 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.
Without $ChkPat, pattern syntax errors can cause cancellation of the request or require the coding of complex ON units.
Examples
For U.S. English:
%PAT='ABC*' %X=$chkpat(%PAT) IF %X NE '' THEN PRINT %X JUMP TO ERROR.RETURN END IF
For French Canadian:
%PAT='pêché' %X=$chkpat(%PAT,'FRENCHC') IF %X NE '' THEN PRINT %X JUMP TO ERROR.RETURN END IF
Usage notes
$ChkPat supports language-sensitive specification of patterns through an optional second parameter (such as $Alpha and $AlphNum).
All characters X'00' through X'FF' are valid in a pattern presented to the SOUL pattern matcher. The $ChkPat function no longer invokes either of the following messages when it encounters these characters.
M204.1688: errortype IN PATTERN 'pattern' AT CHARACTER char M204.1689: errortype IN PATTERN 'pattern' AT CHARACTER char