Support Article
Obj-Browse does not read external mapping with external schema
SA-13678
Summary
User does not specify any columns under Obj-Browse because that is required to fetch all the columns of the table. The CLASS which is mapped to the table has column-property mapping defined under External Mapping tab of its definition.
When you run the activity, Obj-Browse fetches all the columns but does not map them to the Pega Properties (as defined in the Class definition). On the other hand, if you specify the properties under Obj-Browse then the mapping works fine.
This behaviour occurs only with External Schema (it works fine with Internal Schema) in Pega 7.1.8.
Error Messages
No Error Messages.
Steps to Reproduce
Use Obj-Browse in an Activity without specifying any Property for a Class that is mapped to a database table and that has column-property mapping defined under External Mapping tab of its definition.
Root Cause
In case of external class mapped to blob-less table, when none of the properties are selected, name of available columns are sent as fields. In PRPC, ContentBuilder.getListSelectClause is being used to generate select part of the query. Column names passed are being used as alias names in the query. There is no code to see if the passed filed value is a Property name or a column name. In version PRPC 6.2 SP2, it works because of an issue.
Resolution
This issue has been resolved by HFix-23589 which modify the method getListSelectClause in ContentBuilder.java, for classes mapped to external table with external mappings defined, to use property name as alias when passed field value is a column name.
Published August 30, 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.