Constraints rules -
Records can be created in various ways. You can add a new record to your application or copy an existing one. You can specialize existing rules by creating a copy in a specific ruleset, against a different class or (in some cases) with a set of circumstance definitions. You can copy data instances but they do not support specialization because they are not versioned.
Create a constraints rule by selecting
Constraints
from the
Decision
category.
Key parts:
A constraints rule has two key parts:
Field | Description |
---|---|
Apply to |
Select a class for this rule. At runtime, a clipboard page of this class must be a top-level page. The properties to be constrained may be in this class (or in the class of an embedded page).
You cannot use a Rule-Declare-* class or any ancestor of the Rule-Declare - class (including @baseclass ) here. You cannot use a class derived from the Code- or Embed- class here. |
Identifier |
Enter a name for this constraint, unique within the Apply to class. Begin the name with a letter and use only letters, numbers, the ampersand character, and hyphens. No other rules explicitly reference this Identifier value. However, because of normal class inheritance, a constraints rule named MaximumLimit at one level in the class structure may override (and so prevent execution of) a constraints rule named MaximumLimit at a higher level in the class structure. |
Rule resolution
When searching for instances of this rule type, the system uses full rule resolution which:
- Filters candidate rules based on a requestor's ruleset list of rulesets and versions
- Searches through ancestor classes in the class hierarchy for candidates when no matching rule is found in the starting class
- Finds circumstance-qualified rules that override base rules
- Finds time-qualified rules that override base rules