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