Support Article

CustomerID data type and name cannot be changed in PM 7.13

SA-25835

Summary



Developers would like to use their existing Spine, de-normalized records table, in Pega Marketing. Existing table's unique identifier is called MY_PRI_NO and it is a numeric field. And, Pega Marketing's primary key field is CustomerID and it is a varchar2 column.

Both column name and its data type are not in-line with business user's expectations.

Planned to create a new column on the existing table, which is in fact a database view, but this proposal was rejected.

Developers would like to know if a numeric field called MY_PRI_NO can be used instead of varchar2 CustomerIDcolumn/property.

Pega Version 7.2
Pega Marketing 7.13


Error Messages



SQL provided fails because <CustomerClass>.CustomerID does not exist. Physical column name is <TableName>.MY_PRI_NUMBER

select count(Distinct PC0.CustomerID) as ".pyValue" from <SchemaName>.<TableName> PC0 where (PC0.SEGMENT_ADI NOT like '%search_string%')


Steps to Reproduce



Physical column name, the primary key is MY_PRI_NO, map it to CustomerID Property of the Customer class.


Root Cause



The key Property on the Customer class must be CustomerID. This property can be mapped to any database column (of the appropriate type that is, Alphanumeric) through the External Mappings on the Class ruleform.

In Pega Marketing 7.13 on Pega 7.2, if the CustomerID key Property of the Customer class is mapped to a column other than CUSTOMERID, they need to apply HFix-26452. In this case, HFix-26452 has to be applied to address the non-customerid column issue with Segments on Pega 7.2.

Also, the database table column which was mapped to the CustomerID Property of the Customer class was not defined as Primary key.


Resolution



Apply HFix-26452 and enable Primary Key on the database table column which was mapped to the CustomerID of the Customer class.

Published July 20, 2016 - Updated August 23, 2017

Have a question? Get answers now.

Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.