Support Article
Expression Builder Validation not working as expected
SA-9932
Summary
PRPC help within the decision table component states that the condition you wish to evaluate can/may be a Single Value property, a property reference to a single value, a linked property reference, or a more complex expression. '(param.rulecode != "") || true' would qualify as a complex expression.
However the validate functionality within the Expression Builder throws an Expression not valid error when trying to evaluate a valid expression. Please note we know the expression is valid, the Decision Table rule saves ok and the functionality passes testing.
Error Messages
Expression not Valid
Steps to Reproduce
1. Create a decision table rule
2. Ensure 'Allowed to build expressions' check box is checked in the results tab
3. Add an Expression to the property field in the header of Decision Table
4. add any expression for if operation
5. Click validate in the expression builder
Root Cause
The root cause of this problem is a defect in Pegasystems’ code/rules.
Resolution
This issue is scheduled to be resolved in update release 7.1.8
The explanation for this behavior is as follows:
When Param.<parameter> is present in the header of Decision Table, then Expression Builder will use this reference to the parameter,
but will HTML-encode special characters like =, ', and " which will result design time validation to fail.
Published June 12, 2015 - Updated October 8, 2020
Have a question? Get answers now.
Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.