Rules are probably best described by using examples. This chapter contains numerous real world samples.
...
Show/Hide Manager Approval
You have a flow and the first form has a Section for manager approval. The Section is hidden by default. Here is an example of a rule that makes the section visible in the second step of the flow which is a linked activity assigned to the manager role.
Code Block |
---|
if (form.load) { var an = _data.getParameter ("flow.activity.name"); if (an === 'Manager' || an === 'VP'){ ManagerApproval.visible = true; } else { ManagerApproval.visible = false; } } |
...
Code Block |
---|
FirstName[0].label = 'blah label';
FirstName[0].hint = 'blah hint';
FirstName[0].help = 'blah help'; |
Clearing Values in a Table
This rule clears the values from all rows in a table. Notice the For loop that iterates over all the rows. Inside the loop a null value is assigned to all the columns in the table row.
Code Block | ||
---|---|---|
| ||
for (var i = 0; i < Col0.value.length; i++) { Col0[i].value = null; Col1[i].value = null; Col2[i].value = null; } |
You cannot clear an entire table from a rule.
Note | ||
---|---|---|
A section in a repeat will behave differently than a table row when using a rule to set the valid property. For Example, drag and drop a table control into your form. Name it T. Then drag and drop a section into the same form. Name it S. Add a control to the section. Name the control C. Drop the section into a repeat named R. Add this rule to the form.
The section header shows "Invalid value" as a message while the table row shows no such indication signifying an invalid row. |
...
Code Block |
---|
if (form.load) { if (_data.getParameter('flow.activity.name') === 'Manager Review') { Review.visible = true; } } |
...
form.unload
Rules can be used to finalize field values after the users clicks the form's submit button but prior to the Form and Doc Action execution. Rules using form.unload are triggered when the form user clicks the submit button and for workflows when the user clicks continue to go to the next activity or finish to complete the flow.
...