A time-qualified rule (also called a date-qualified or temporary rule) is a rule instance that has a non-blank associated start date and time, end date and time, or both.
Regardless of other rule resolution logic, time-qualified rule instances are found and used only between the start date and time and the end date and time. Before or after these moments in time, time-qualified rules are invisible to rule resolution.
To create a time-qualified rule instance, first create a
base rule using the New () and Save () operations, or the Save As
()
operation. If you need to prevent anyone from running the rule
immediately, you can choose No/Draft Mode
for the
initial Availability value and change this
value to Yes
later.)
Then use Save As again and complete a starting date and time and/or an ending date and time. Click the button to produce a pop-up calendar window that helps you choose dates and times. You can omit the time.
If the original rule has an Applies To key part, the time-qualified rule must have the same Applies To key part, or identify a subclass that is derived from the Applies To value in the original rule.
When you save a time-qualified rule, a green clock appears on the rule form near the Availability icon. To view the start and end times in a ToolTip, hold the pointer over the clock icon.
Rules with a Start, End, or Circumstance value are known as qualified rules, as they are valid only when certain qualifications are met. You cannot delete a base, unqualified rule when a qualified rule with the same key exists; the unqualified version provides a fallback.
Your application can include multiple time-qualified rules (for the same base rule) that have overlapping (but not identical) date and time intervals. At runtime, rule resolution processing finds all the time-qualified rules with an interval that includes the current date and time. It selects the "best" rule to run based on the following tests:
You can create time-qualified rules only for rule types with the Allow rules that are valid only for a certain period of time box selected on the Class form. In Version 5.4+, you can time-qualify Declare-Constraints, Declare-Expression, and Declare-OnChange rules. . You cannot override a final rule with a time-qualified rule.
When time-qualified rules are used in a multinode system, be sure to synchronize the internal clocks of all the server nodes in the cluster. Clock differences of less than a few seconds may lead to incorrect application results. Most operating systems offer facilities for such synchronization.
Don't confuse time-qualified rules with as-of date processing.
If a time-qualified stream rule contains JSP tags (rather than directives), the base rule must also contain JSP tags rather than directives. Conversely, if the time-qualified rule contains directives, the base rule must contain directives.
You can't check out a time-qualified rule at a time when the base rule is checked out (by you or by anyone). Similarly, you can't check out a rule that is a base rule when you or another developer has a related time-qualified rule checked out.