Support Article
Exposed columns are not saving after upgrade
Summary
After upgrading to Pega 7 exposed columns for an internal work table are not being populated.
Error Messages
Values are not getting saved in the database table columns.
Steps to Reproduce
Run activity that does an Obj-Save on a work object and observe the properties are not populating in some of the exposed columns.
Root Cause
An issue in the custom application code or rules.
In the class hierarchy of these classes the property name of the exposed column also exists in another class, but with a different case.
Property Column mappings are accomplished in the database layer of the product using a Java class called the ColumnPropertyMap.
During ColumnPropertyMap calculation for class, all of the Rule-Obj-Property Rules defined on that class and all of its ancestors are read, and for each Property, a mapping from the name of the column, the Property name in all upper case is added to the name of the property in mixed case.
There is a known scenario with this design - if there are properties defined at different points in the class hierarchy with the same name but different case, the definition which comes in second will be the only one that remains in the map and the definition which ends up second is completely non-deterministic.
As a result issues such as this, the save failing or rule resolution issues can occur.
Resolution
Perform the following local-change:
Delete the duplicate properties in the Class Structure that have the same name so that the Engine picks up the correct property to be exposed.
Published January 31, 2016 - 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.