Inherited Rules
Cascading attribute rules on a parent type are inherited by all subtypes. The inheritance icon
displays next to each node in the tree containing inherited rules. Local rules are cascading attribute rules created directly on the current type. Only rules created locally on the current type can be edited or deleted; inherited rules can only be edited or deleted on the parent type where they are defined. Because the type hierarchy can be many levels deep, rules can be inherited from the immediate parent type or an ancestor type many levels above the subtype in the type hierarchy.
In the following graphic, both inherited and local rules are present where Country is the driving attribute for State and State is further the driving attribute for City.
Hiding and Showing Inherited Rules
The drop-down list next to the Find in tree search field displays the icon for the current state of inherited rules, either hidden or shown, and the action to change that state is selectable from the drop-down list:
• —displays when inherited rules are shown. Select the
Hide Inherited Rules action from the drop-down list to hide inherited rules.
• —displays when inherited rules are hidden. Select the
Show Inherited Rules action from the drop-down list to show inherited rules.
The following graphic shows the same Cascading Attributes tree, with inherited rules hidden. Only the local rules are shown.
Even when hidden, when inherited rules are enabled, they are still in effect.
If inherited rules are hidden, using the Find in tree search field or attempting to enable inherited rules causes the system to prompt you to clear the Hide Inherited Rules filter to proceed.
Disabling and Enabling Inherited Rules
| Disable inherited rules if your business requirements dictate that any cascading attribute rule must differ between the parent type and the subtype in either of the following ways: • different backing global enumerations referenced by an If condition, And If condition, or the Then clause. • different selectable values set for an If condition, And If condition, or the Then clause. Once inherited rules are disabled, the cascading attribute rules tree must be entirely rebuilt on the subtype with locally defined rules. |
By default, inherited rules are always enabled, meaning that rules inherited from all parent types are in effect on the current type, as well as any locally created cascading attribute rules.
Inherited rules can be disabled by clicking the disable inherited rules icon
. Disabling inherited rules leaves only locally created cascading attribute rules in effect for the current type and any subtypes of the current type. When inherited rules are disabled on the current type, subtypes of the current type inherit rules only from the current type.
Inherited rules that have been disabled can be re-enabled by clicking the enable inherited rules icon
. Subtypes of a type which has disabled inherited rules can later explicitly enable inherited rules, in which case they inherit the rules from all ancestor types, including the type which has disabled inherited rules.
When inherited rules are enabled, cascading attribute rules cannot be created or edited on a subtype in a way that results in
circular dependencies on that subtype. Rules can be created and edited on parent types that result in circular dependencies on subtypes which inherit those rules.
If enabling inherited rules on a subtype results in circular dependencies with locally created rules, a message warning of the circular dependencies displays on the Cascading Attributes tab. The subtype can be saved with those circular dependencies in effect. Similarly, if rules created or edited on a parent type result in circular dependencies on a subtype which inherits those rules, the warning message is displayed on the subtype the next time the subtype is viewed. The message remains on the Cascading Attributes tab for the subtype until all circular dependencies are addressed.
| After making changes to the rules for a parent type, always inspect the rules for any subtypes with inherited rules enabled, to make sure that the rules appear as expected. Modify rules on the subtypes as needed. |