Visibility expression conditions do not work after upgrade
After an upgrade from PRPC 6.3 SP1 to Pega 7.1, user observed that the visibility expression conditions on controls or labels do not work as expected in Pega 7.2. It does however work for layouts.
For example, if the condition given is Property=='001', then it does not work. However, if the user resaves the expression, which then gets altered to Property=001, it starts working.
Steps to Reproduce
1. In PRPC 6.3 SP1, add a visible when condition to a text box in a section. For example: Property=='001'.
2. At runtime set the value of property to 001, the text box is now visible.
3. Upgrade to Pega 7.2 and run the flow. The text box will not be visible even though Property is set to 001.
As part of enhancing the stream generation in 7.x version of Pega.
Enhancement to Assemble when expressions for jsp-free UI the changes are made for Pega when expression generation or translation to use compiled When expression that resulted in changing the behavior of conversion ' character in expression condition.
In PRPC 6.3 version - PRPC Engine used older way of Antlr3 Grammar to translate the expressions that are defined on cell's which in turn produces compiled When expression in appropriate format for the execution at run-time.
Where as in Pega 7.x version this has been enhanced to use antlr4 grammar to generated the compiled When expression.
It would be better if one can change the visible When expression to adhere to the latest grammar as relying on legacy translator is strictly not recommended.
Change the visible When rule from .CheckProp = '011' to .CheckProp = 011.