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. 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 the base rule of a time-qualified rule at a time between the start and end date and time.