A rule is not executed
Symptoms
In Decision Designer, when you run a decision model, a rule is not executed.
Causes
There can be different reasons for a rule not to execute, including the definition of the decision logic or the interaction policy you selected.
ArithmeticExceptionNumberFormatExceptionNullPointerExceptionIndexOutOfBoundsException
Expressions in conditions that result in exceptions during their evaluation are treated as unknown values and are handled by the rule engine. The rule engine evaluates the overall rule conditions by using the following three-valued logic:

If the
rule condition evaluates to true, despite unknown values in the condition expressions, the action of
the then part is applied. If the rule condition evaluates to false, despite unknown
values in the condition expressions, the action of the else part is applied. If the
rule condition evaluates to unknown, because of unknown values in the condition expressions, the
rule is not executed.
In the following example, if the status of the borrower is unknown, no rule action is executed.
if
the status of Borrower starts with "duplicate"
then
reject 'the loan' ;
add "duplicate detected" to the messages of 'the loan' ;
else
add "no duplicate found" to the messages of 'the loan' ;
In the following example, if the status of the borrower is unknown and the comment of
the loan contains the word duplicate, then the loan is rejected and a
duplicate detected message is sent.
if
the status of Borrower starts with "duplicate" or the comment of 'the loan' contains "duplicate"
then
reject 'the loan' ;
add "duplicate detected" to the messages of 'the loan' ;
else
add "no duplicate found" to the messages of 'the loan' ;
However, if the status of the borrower is unknown and the comment is unknown, then no rule action is taken. The loan is not rejected and the message no duplicate found is not added to the loan.
In the following example, if the status of the
borrower is unknown and the comment in the loan contains the word duplicate,
neither the then nor the else actions are taken. In other words,
the loan is not rejected and the message no duplicate found is not added to the
message of the loan.
if
the status of Borrower starts with "duplicate" and the comment of 'the loan' contains "duplicate"
then
reject 'the loan' ;
add "duplicate detected" to the messages of 'the loan' ;
else
add "no duplicate found" to the messages of 'the loan' ;
For the loan to be rejected, both expressions must be true.