Issue
Instances of Rule-DataObject and Rule-ClassMetaData are generated after creating new Data Types and Case Types.
Symptoms and Impact
Various Rule instances are created behind the scenes within the application, and these can cause concern when they are not documented anywhere.
Steps to reproduce
The following actions create Rule-DataObject instances:
- Create a new data type.
- Add an existing data type to an application rule.
The following actions create Rule-ClassMetaData instances:
- Create a new data type or case type.
Root Cause
This behavior is expected.
These are supporting Rule types, and instances are automatically created when developing Data Types and Case Types. In App Studio these rule instances monitor the life cycle of draft data objects, and they also provide a unified view of draft and concrete data objects.
Rule-DataObject instances are created in the same rulesets as the other rules which support Data Types (Data Pages, etc). The functionality moves them from the branch ruleset into the application ruleset as it would any other rule type.
Solution
These ruletypes are deemed necessary for proper system operation and therefore no access to administer them will be granted. The rules can be safely ignored as they have no negative impact on the runtime behavior of an application
The product documentation has been enhanced to document their existence.
For more information see Autogenerated Rules and classes.
@MarijeSchillern @KurtW_GCS How to manually update the the Rule-ClassMetadata instance of a data type. We are trying to provide for CUD options to the data type but the DX API pages/{pageID} is not fetching the savable, lookup data pages from the Rule-ClassMetadata instance for the corresponding data type using the data page D_pxGetDataPagesForClass because the corresponding pyLookUpDataPage, pyListDataPage and pySavableDataPage values are blank.
What can we do to update the values into the instances.