While Node

While Node

In Presence Tasks, it is impossible to link a Node into an earlier Node in the Execution Path as this leads to infinite recursion.

However looping functionality is often desirable, and the While Node serves this purpose - it will continue to repeat execution of subsequent Nodes as long as the conditions specified are met. This Node is most useful if you wish to repeat a process a certain number of times, or as long as certain other conditions remain true.

As long as the While Node test conditions evaluate to true the following Nodes will be executed. As soon as the test evaluates to false it will cede execution. This is an example of Iterative Execution Path.

While Node Iteration can be slow on limited CPU/memory machines due to nature of the Presence Context being cloned on each iteration and the rule being evaluated at every iteration, if you encounter this, you might want to use a different strategy such as creating a temp table in a database and then use the built in iteration functionality of Presence (see Data Table). The Built in iteration functionality will only use one rule evaluation so it is much faster.

Using the While Node

Drag the "While" Task Element from the toolbox onto your Task Edit View. You will then be presented with the following Dialog Box:

Columns are not shown in the above window as the while node only evaluates variables for the rules to improve performance.

You can create conditions by dragging the Variable from the left hand panel into the main panel. When doing so you will be asked to input the condition:

You can add one or more conditions, and they can be arranged in nested groups separated by and / or logic. This allows you to create a complex condition such as:

Country = USA

AND

State = Nevada

AND (

City = Las Vegas

OR

City = Boulder

)

More detailed information on Rules and Conditions can be found in the Rules discussion.