Complete this tab to determine the conditions that cause automatic
recomputation of the expression. These conditions affect how often the
computation on the Expressions tab is
performed.
Change tracking applies to properties on the
primary page — the page that matches the Applies
To key part of the rule. Changes to properties on other pages
referenced in the expression or on the Pages &
Classes tab are not tracked and do not trigger recomputation.
HOPPK 12/09/04 B-20854 rejected
Additionally, the following operations that can change a property
value do not cause change tracking to occur:
- Saving a rule form that contains a property
- Retrieving a property with the Obj-List or Obj-Browse method
GENTJ 04/05/05
- Retrieving a property with the RDB-List method, unless the
ApplyDeclaratives parameter of that method is
selected
Forward chaining operates only when the source
properties are not marked as invalid. If a property has an associated
message, forward chaining halts. R-19751 MIRAT 42SP6
Changes made to a property value within a
Java step of an activity do cause backward changing computations to
start, but do not cause forward chaining computation. OLSOK CLINIC
11/11/05
Field
|
Description
|
Target Property
Data
|
Select to determine how often Process Commander recomputes
the value of the Target Property (identified in
the second key part).
|
Calculate Value
|
Select an option to determine which events cause this rule to
run:
Value
|
Description
|
Whenever inputs change
|
(Default). Forward-chaining
recomputation. The target property is not recomputed
when the property is used as a source, only when one of
the expression inputs change. If the target property is
not present on the page when needed or is present but
has no value, the Declare Expression rule does not
run.
|
When used if no value present
|
Compute when the value is null, blank, zero, or does
not yet appear on the page. Assuming the computation
results are not null, later requests for the target
property do not cause the Declare Expression rule to
run.
|
When used if property is missing
|
Recomputation when the target property is not
present on the clipboard. BUG-1097 and B-24072 cant
use Run
|
Whenever used
|
Just-in-time recomputation even when the property
already has a value, using backward
chaining.
This
choice ensures that the target property value matches
the computed value at the start of every
activity step, by evaluating the rule upon every read
access of the target property. Because this choice can
be costly in terms of performance, a warning icon
appears when you save the rule form.
During backward chaining computations, if
the Otherwise section of a decision
tree or decision table, or the Default
row in a map value rule referenced in a Declare
Expression rule can be computed, but properties needed
for other parts of the form are not defined, the
Otherwise value is returned as the
value of the rule. (In Process Commander releases
before 5.3, this condition produced an exception that
ended processing.) B-21294 BUG-1155
|
When applied by a Rule Collection
|
Causes this Declare Expression rule to execute only
when referenced during a collection rule execution
(Rule-Declare-Collection rule type).
C-2547 Expressions of this type can be
self-referential; for example: GENTJ
11/13/06
MyProperty=.MyProperty+1.
|
As a best practice, select Whenever used
when the expression involves values from properties on multiple
pages. MIRATSR-4104 B-21539
|
Additional
Dependencies
|
|
|
Optional. Enter property references to identify additional
properties (in the same page context) to be tracked. Order is
not significant. If not blank, changes to any of the properties
cause this rule to execute. REALLY?
This array appears only when you select Whenever inputs
change for the Calculate Value
field.
|
Context Execution
Behavior
|
|
Execute this
Expression
|
Select one of three settings to further define which
situations cause this expression to be evaluated:
PROJ-30
Value
|
Description
|
Only when the top-level page is of the Applies
to class
|
To execute this rule only if the property is on a
top-level page.
Don't select this option if the
Applies To key part of this rule
identifies a class derived from the Embed-
base class; by definition, pages of such classes are
never at the top-level. GAJNJ 4/10/07
|
When the top-level page is of the Applies To
class, or one of the following
|
To restrict execution to contexts in which the
top-level page matches the Applies To
class, one of a specified list, or any descendent
classes in the class hierarchy. GAGNJ
5/2007
|
Regardless of any pages it is embedded
in
|
To execute the rule regardless of the page context,
making this rule completely
"context-free".
If you select this option, you can't
use the Top or Parent
keywords in the computations on the Expressions tab, either explicitly or
in decision rules referenced on that tab.
|
The third selection can
produce high execution frequencies. Select the most restrictive
value that meets your application requirements.
If this Process Commander
system was upgraded from Version 5.2 or earlier, execution of
context-free expressions is disabled by default. Enable them
through changes to the prconfig.xml file. See
More about Declare Expression
rules.
|
Allowed top-level
classes
|
This array appears only if you select the
second choice (When the top-level page.. .) for the
Execute this Expression field.
Enter a list of classes. Execution occurs if the top-level
page has a class that exactly matches any class on this list, or
is a descendent of one of the classes on this list. GAGNP
5/2007
Do not list the Applies To key part here;
that class is included automatically.
|
About Declare
Expression rules