7.10.2 CALLCHECK Comments / Warnings
-
The CALLCHECK command must be coded within a BEGINCHECK / ENDCHECK validation block. Refer to these commands for further details.
-
All programs called as part of a complex logic check must have at least 3 standard parameters. These parameters are implicit and do not have to be declared in the ADD_PARMS parameter.
|
-
Additional parameters may be passed to the program by nominating them in the ADD_PARMS parameter.
-
Additional parameters may be:
-
An alphanumeric literal
-
A numeric literal such as 1, 14.23, -1.141217.
-
Another field name such as #CUSTNO, #INVNUM, etc.
-
A system variable name such as *BLANKS, *ZERO, *DATE or any other system variables defined at your installation.
-
A process parameter such as *UP01, *UP02, etc.
-
an expandable group expression such as (#XG_CUST #XG_PROD *EXCLUDING #CUSTNO).
-
The type and length of the parameter(s) passed depends upon the type and length of the parameter value supplied.
-
For alphanumeric fields (alpha literals, alpha fields, alpha system variables or alpha process parameters) the parameter is passed as alpha (256) with the parameter value left aligned into the 256 byte parameter.
-
For numeric fields (numeric literals, numeric fields, numeric system variables or numeric process parameters) the parameter is passed as packed 15 with the same number of decimal positions as the parameter value.
-
For numeric literals this means the same number of decimal positions as specified in the literal (e.g.: 1.12 will be passed as packed 15,2. 7.12345 will be passed as packed 15,5. 143 will be passed packed 15,0. etc).
-
For all other types of numeric parameters this means the same number of decimal positions as their respective definitions.
-
As with the standard parameters, the actual value is passed in a work area so it is not possible to change the value of a field by changing the parameter value in the validation program.
-
Refer to the Complex Logic Rule in the LANSA for i User Guide for further information.