GenerateSuspense
The GenerateSuspense business rule is used to create a suspense record when the transaction to which the rule is attached is processed. The rule populates a value to the fixed fields in the AsSuspense table (SuspenseScreen) as well as to the dynamic fields in the AsSuspenseFields table. Examples of these fixed fields are: Policy Number, Effective Date, Amount, Type Code and Status. Some of those fields can be populated based on the configuration defined in this business rule. Suspense records and accounting to those suspense records can be conditionally created.
Note: This business rule should work in conjunction with the <Suspense> element in the Transaction. If the GenerateSuspense business rule exists and AutoEntry attribute for the <Suspense> element is defined as YES or not defined at all, then the GenerateSuspense business rule should be used. If the <Suspense> element's attribute AutoEntry= "NO" then GenerateSuspense will not be used, even if it exists and the normal validation for AutoEntry= "NO" should be followed.
Element/Tag | Attribute | Definition | Element/Attribute Value and Description |
---|---|---|---|
<GenerateSuspense> |
The required opening and closing elements of this business rule. |
||
<Tests> |
|
Optional element: Allows configuration of test(s) to see if a section of rule should be invoked. |
|
<Test> |
|
Required / Repeatable element: Condition to add a role to a policy or a segment. If this condition is satisfied, the specified role will be added to the policy or a segment, otherwise the specified role will not be added. |
Required element value: Expression An expression to specify a condition. |
<Suspense> |
|
Optional element: The opening and closing tag of the suspense section of the business rule. Note: This element is logically required. If this is omitted, then this business rule has no effect. |
|
<Column> |
Optional / Repeatable element: This element is used to specify the values with which the records should be created. |
Processing the transaction attached to this business rule generates the suspense record. | |
NAME |
Required attribute: =Field Names in SuspenseScreen Name of the columns like TypeCode, Prefix, Amount in SuspenseScreen for which a value should be populated from the transaction where the GenerateSuspense business rule is attached. |
||
<Fields> |
|
Optional element: Used to specify the MathVariables in transactions where the values should be copied from. Also specifies the Fields in SuspenseScreen (AsSuspenseField) where values should be copied to. |
|
<Field> |
|
Required / Repeatable element: The opening and closing tag that encompasses <From> and <To> elements. |
|
<From> |
|
Required element: The <From> element will contain the name of Field or MathVariable in the transaction.
|
Required element value: String The field name or MathVariable in the transaction where the values should be copied from. |
<To> |
|
Required element: The <To> element will contain the name of a dynamic field in SuspenseScreen where the value should be copied to. |
Required element value: String The field name or MathVariable in the SuspenseScreen where the values should be copied to. |
<CloseSuspense> |
|
Optional element: Suspense Records created with this rule default to Open status ('15) and AttachedAmount=0. This can be overridden by using the <CloseSuspense> element. |
|
<Tests> |
|
Optional element: Allows configuration of Test(s) to see if a section of rule should be invoked. |
|
<Test> |
|
Required / repeatable element: Condition to add role to a policy or a segment. If this condition is satisfied, the specified role will be added to the policy or a segment, otherwise the specified role will not be added. |
Required element value: Expression An expression to specify a condition. . |
<GenerateAccounting> |
|
Optional element: This element is used to indicate whether the accounting should be performed for the newly generated records. |
|
<Tests> |
|
Optional element: Allows configuration of Test(s) to see if section of rule should be invoked. |
|
<Test> |
|
Required / repeatable element: Condition to add a role to a policy or a segment. If this condition is satisfied, the specified role will be added to the policy or a segment, otherwise the specified role will not be added. |
Required element value: Expression An expression to specify a condition. |
<ShadowSuspenseOnReversal> |
|
Optional element: This element is used to indicate whether the suspense should be shadowed upon the reversal of the transaction. This will prevent the suspense record from being used anymore. |
|
<Tests> |
|
Optional element: Allows configuration of Test(s) to see if section of rule should be invoked. |
|
<Test> |
|
Required / repeatable element: Condition to add role to a policy or a segment. If this condition is satisfied, the specified role will be added to the policy or a segment, otherwise the specified role will not be added. |
Required element value: Expression An expression to specify a condition. Note: when multiple <Test> elements are configured, it is expected that all Test elements resolve to TRUE for the overall <Tests> to be considered TRUE (logical AND operation) and the other parts of the configuration in relation to <Tests> element is executed |
<OpenSuspenseOnReversal> |
|
Optional element: This element is used to indicate whether a Closed Suspense should be put back to the Open Status upon reversing the transaction. |
|
<Tests> |
|
Optional element: Allows configuration of Test(s) to see if section of rule should be invoked. |
|
<Test> |
|
Required / repeatable element: Condition to add role to a policy or a segment. If this condition is satisfied, the specified role will be added to the policy or a segment, otherwise the specified role will not be added. |
Required element value: Expression An expression to specify a condition. |
<GenerateAccountingOnReversal> |
|
Optional element: This element is used to indicate whether the accounting should be performed when the corresponding transaction is recycled or reversed. |
|
<Tests> |
|
Optional element: Allows configuration of Test(s) to see if section of rule should be invoked. |
|
<Test> |
|
Required / Repeatable element: Condition to add role to a policy or a segment. If this condition is satisfied, the specified role will be added to the policy or a segment, otherwise the specified role will not be added. |
Required element value: Expression An expression to specify a condition. |
<CloseSuspenseOnReversal> |
|
Optional element: This element is used to indicate whether a Suspense record should be Closed upon reversing the transaction. |
|
<Tests> |
|
Optional element: Allows configuration of Test(s) to see if section of rule should be invoked. |
|
<Test> |
|
Required / repeatable element: Condition to add role to a policy or a segment. If this condition is satisfied, the specified role will be added to the policy or a segment, otherwise the specified role will not be added. |
Required element value: Expression An expression to specify a condition. |
<InsertIntoMath> |
|
Optional element: Used to indicate whether the SuspenseGUID of the newly generated Suspense item should be stored in the Math. |
The variable written back into the math can be a string or a collection with an amount. |
NAME | String
The Name of the MathVariable to which the results should be written. |
||
TYPE | Used to define whether single or multiple entries should be written to the Math. TEXT - To indicate that only the SuspenseGUID should be written to the Math. COLLECTION - To indicate that multiple Suspense items should be written to the Math. |
||
AMOUNT | String - MathVariable that resolves to an Integer/Decimal value. Attribute is used only when the COLLECTION attribute is present. Used to populate a value from a collection back into the math. |
XML Example
<GenerateSuspense>
<Tests>
<Test TYPE="Expression">GenerateSuspense=Yes</Test>
</Tests>
<Suspense>
<ColumnNAME="TypeCode">'03'</Column>
<ColumnNAME="Amount">1000</Column>
<ColumnNAME="PolicyNumber"></Column>
<ColumnNAME="EffectiveDate"></Column>
<ColumnNAME="LastName"></Column>
<ColumnNAME="FirstName"></Column>
<ColumnNAME="AccountNumber">50002</Column>
<GenerateAccounting>
<Tests>
<Test>Yes = Yes</Test>
</Tests>
</GenerateAccounting>
<GenerateAccountingOnReversal>
<Tests>
<Test>Yes = Yes</Test>
</Tests>
</GenerateAccountingOnReversal>
<ShadowSuspenseOnReversal>
<Tests>
<Test>Amount = AttachedAmount</Test>
</Tests>
</ShadowSuspenseOnReversal>
</Suspense>
</GenerateSuspense>
XML Schema
<GenerateSuspense RULE="[SuspenseScreen|SuspenseBatchScreen]">
<Tests>
<Test>"[Condition]"</Test>
</Tests>
<Suspense>
<Column NAME="[SuspenseScreenFieldName]">"[FieldName]"</Column>
<Fields>
<Field>
<From>"[FieldName]"</From>
<To>"[SuspenseScreenFieldName]"</To>
</Field>
</Fields>
<CloseSuspense>
<Tests>
<Test>"[Condition]"</Test>
</Tests>
</CloseSuspense>
<GenerateAccounting>
<Tests>
<Test>"[Condition]"</Test>
</Tests>
</GenerateAccounting>
<OpenSuspenseOnReversal>
<Tests>
<Test>"[Condition]"</Test>
</Tests>
</OpenSuspenseOnReversal>
<ShadowSuspenseOnReversal>
<Tests>
<Test>"[Condition]"</Test>
</Tests>
</ShadowSuspenseOnReversal>
<CloseSuspenseOnReversal>
<Tests>
<Test>"[Condition]"</Test>
</Tests>
</CloseSuspenseOnReversal>
<GenerateAccountingOnReversal>
<Tests>
<Test>"[Condition]"</Test>
</Tests>
</GenerateAccountingOnReversal>
</Suspense>
<InsertIntoMath NAME="[MathVariable]" TYPE="[TEXT|COLLECTION]"></InsertIntoMath>
</GenerateSuspense>