Question
Saltech Consulting
HU
Last activity: 30 Nov 2018 14:31 EST
Property specialization in a subclass
Hi,
I'm trying to specialize a property in a subclass. The use case would be: on the FW-Work class the property would just refer to a data page, while on a specific case type (which inherits from FW-Work) I want to store the property data (change the "refer to" to "copy from data page"). When I save the property on the specific case type (child of FW-Work), Pega shows a warning:
```A property of this name already exists for the chosen applies to class. It is either inherited from a parent class or in a different ruleset than the one chosen. Duplicate property definitions can negatively impact system performance.
Do you want to create anyway?```
There are a couple of community posts, the most relevant is this: https://collaborate.pega.com/question/property-rule-ruleset-version-resolution-ruleset
There the reason is that properties are saved in the database with a specific DB column type and this cannot be altered later, see: https://docs.pega.com/how-change-type-property-rule-higher-ruleset-version, but our use case is different, and that's the reason I would like to know the Pega logic to be sure we don't break anything unexpectedly.
Hi,
I'm trying to specialize a property in a subclass. The use case would be: on the FW-Work class the property would just refer to a data page, while on a specific case type (which inherits from FW-Work) I want to store the property data (change the "refer to" to "copy from data page"). When I save the property on the specific case type (child of FW-Work), Pega shows a warning:
```A property of this name already exists for the chosen applies to class. It is either inherited from a parent class or in a different ruleset than the one chosen. Duplicate property definitions can negatively impact system performance.
Do you want to create anyway?```
There are a couple of community posts, the most relevant is this: https://collaborate.pega.com/question/property-rule-ruleset-version-resolution-ruleset
There the reason is that properties are saved in the database with a specific DB column type and this cannot be altered later, see: https://docs.pega.com/how-change-type-property-rule-higher-ruleset-version, but our use case is different, and that's the reason I would like to know the Pega logic to be sure we don't break anything unexpectedly.
There is a decent explanation, but does not fully cover our case.
https://docs.pega.com/implementation-methodology-and-dco/prpc-63-dictionary-rule-warnings
```Appears when a property of the same name already exists in the class inheritance path. Properties that are duplicates of other property instances have an effect on caching, which can have a negative effect on system performance. For example, having several properties named Amount in one inheritance path, even if they belong to different RuleSets, can slow the initial assembly of rules that reference Amount. As a best practice for good run-time performance, choose property names that are distinct and unique throughout your application. Choosing more explicit names (such as PrincipalAmount, AmountAtRisk) will both prevent this performance impact and help ensure that developers use the appropriate property.```
Does anyone know what is the reason behind this warning? Is it safe to ignore it in the above mentioned use case?
***Edited by Moderator Marissa to update SR Details***