Best way to add new properties to the Work Party to leverage Pega pyWorkParty property to store data
I have Customer ID, Email, Name field to capture in the case. I am using .pyWorkParty(Customer) page to capture the information in UI. The OOTB Data-Party class Email and Name field but not Customer ID. I need to use CustomerID and Name in Reports.
Initially i tried to use the pyWorkPartyUri but that is overridden by the pyEmail1 property in Data-Party-Person.WorkPartyRetrieve since pega assume Data-Party-Person doesnt have an identifier. So i am considering below approaches.
1. Do a save of Data-Party-Person.WorkPartyRetrieve activity into my rule set and add a check in step1 where it is resetting the pyWorkpartyUri with pyEmail1 property and keep using the pyWorkPartyUri property to capture the CustomerID.
2. Creating a new property CustomerID in Data-Party class and in Index-WorkPartyUri class. Do a save as of PartyUri declare index to my work class and add the CustomerID to the mapping and expose the CustomerID in Index-WorkPartyUri index class.
In the 2nd approach, pega is not allowing to expose the CustomerID in Index-WorkPartyUri class.
3. Creating a new Data-Party-Customer class and use the pyWorkPartyUri as CustomerID. The pyWorkPartyUri wont be overridden by WorkPartyRetrieve activity since Data-Party.WorkPartyRetrieve will be executed.