PostAssignmentValidateExpressions
The PostAssignmentValidateExpressions business rule is optionally associated with a transaction as a transaction override. It does not exist in the TransactionBusinessRulePacket. This allows the rule to process each time the activity processes while in an NUV pending state. The rule contains a math section that allows for standard math calculations, and a validation section that supports standard validation expressions.
Note: Named MathVariables in this rule must be unique and not replace any MathVariables in the transaction math section. However, MathVariables from the transaction are available to the math section of this rule. Valuation values modified by Assignment processing are also available.
Element/Tag | Definition | Attribute | Element/Attribute Value and Description |
---|---|---|---|
<PostAssignmentValidateExpressions> |
The opening and closing tag |
|
Overridden at the transaction level. |
<MathVariables> |
Standard math section | ||
<MathVariable> |
Standard math syntax | ||
<ValidateExpressions> |
Optional element: Standard validation section |
||
<Expression> |
Required / Repeatable element: This tag specifies a condition to be evaluated True/ False, and the error message to be displayed on the screen if the condition is met. |
|
Required element value: Expression Specifies the condition that needs to be evaluated upon trying to process the transaction. |
TYPE |
Required Attribute: ErrorOnTrue If the Expression is true then the error message displays. ErrorOnFalse If the Expression is false then the error message displays. |
||
OVERRIDABLE
|
Optional Attribute: Yes: The error messages will be displayed with a check box in the Error window. Clicking the checkbox will allow the user to override the error. No: The error will not be overridable. Auto: The error will be automatically overridden. |
||
ERRORNUMBER |
Optional Attribute: ErrorNumber: Indicates the field value to define error message activity. Code values for error message from the AsErrorCatalog database table. Example: LH001, U001, V000, V001, V012, V020 Note: If the OVERRIDABLE attribute is set to "Yes," the error numbers entered as values of this attribute will display on the Overridable Errors section of the Transaction Security pane. The security group's ability to override each error can be configured on this pane. |
||
MESSAGE |
Required Attribute: ="ErrorMessage" This attribute is used to specify the error message that is displayed upon evaluating the condition. Note: The value of a Math Variable or a Segment Field can be substituted in the error message surrounded by $$$. See General Structure and Best Practices |
||
WARNING |
Optional Attribute: Yes: The expression is defined as a warning. If defined as a warning, the expression will not display with an Override? checkbox on the Activity Error pop-up. No: The expression is defined as an error. This is the default value. Note: If this attribute is present in the configuration, but the VerificationScreen rule has not been configured for the transaction, then the attribute will be ignored. If the attribute is absent from the configuration, then the expression will be defined as an error, by default. |
||
<GenerateAccounting> |
Optional element Indicates if accounting detail records per COA entries are written. |
Yes No Literal or MathVariable. Default value is “Yes”. |
XML Example
<PostAssignmentValidateExpressions>
<MathVariables>
<MathVariable VARIABLENAME="ActiveStatusCode" TYPE="VALUE" DATATYPE="TEXT">01</MathVariable>
<MathVariable VARIABLENAME="PendingStatusCode" TYPE="VALUE" DATATYPE="TEXT">08</MathVariable>
<MathVariable VARIABLENAME="True" TYPE="VALUE" DATATYPE="INTEGER">1</MathVariable>
<MathVariable VARIABLENAME="False" TYPE="VALUE" DATATYPE="INTEGER">0</MathVariable>
<MathVariable VARIABLENAME="WriteAccounting" TYPE="VALUE" DATATYPE="TEXT">No</MathVariable>
<MathVariable VARIABLENAME="Condition1" TYPE="SQL" DATATYPE="INTEGER">SELECT...</MathVariable>
<MathVariable VARIABLENAME="Condition2" TYPE="POLICYFIELD" DATATYPE="TEXT">StatusCode</MathVariable>
<MathIF IF="Condition2 = ActiveStatusCode">
<MathVariable VARIABLENAME="Condition1" TYPE="EXPRESSION" DATATYPE="INTEGER">Condition1 + 1</MathVariable>
<MathVariable VARIABLENAME="WriteAccounting" TYPE="VALUE" DATATYPE="TEXT">Yes</MathVariable>
</MathIF>
<CopyBook>CopyBook-ActivityValuation</CopyBook>
</MathVariables>
<ValidateExpressions>
<Expression TYPE="ErrorOnTrue" OVERRIDABLE="No" MESSAGE="Message Text 1" ERRORNUMBER="UOO1" FIX="Error Fix Text 1">Condition1 = True</Expression>
<Expression TYPE="ErrorOnTrue" OVERRIDABLE="Yes" MESSAGE="Message Text 2" ERRORNUMBER="UOO2" FIX="Error Fix Text 2">Activity:FieldName < 0</Expression>
<Expression TYPE="ErrorOnTrue" OVERRIDABLE="No" MESSAGE="Message Text 3" ERRORNUMBER="UOO3" FIX="Error Fix Text 3">Condition2 = PendingStatusCode</Expression>
</ValidateExpressions>
</GenerateAccounting>WriteAccounting</GenerateAccounting>
</PostAssignmentValidateExpressions>