You are here: Reference > Rule types > Validates > Validate form - Completing the Validate tab

Validate form
Completing the Validate tab

  1. About 
  2. New 
  3. Validate 
  4. Input 
  5. Pages & Classes 
  6. History 
  7. More... 

The Validate tab relates the to-be-evaluated properties and their corresponding validation settings in a row-column matrix structure. Complete this tab to define validation conditions for one or more properties.

Specify the properties in the first column (under the Property heading). Then for each property, use the fields and controls in the other columns to specify defined sets of validation conditions that the system applies to the property. By default, there is a set named Default Validation. Additional columns are displayed if input-qualified validation conditions are specified.

Best practice: Aim to use no more than fifty (50) rows and ten (10) columns on this tab. If you need to specify more than that, create another validate rule to use in the Additional Validation fields.

When the system runs the validate rule, it first evaluates the validation conditions defined for the first property in the list, then it evaluates the validation settings for the second property, and so on. When a property is found to be invalid, if no further validate actions are specified (for example, if Continue Validation is not selected in the condition details and nothing is specified for the Also Execute or Additional Validation fields), the system ends its evaluation.

Expanding and collapsing details

Use the Expand All and Collapse All buttons to show and hide the details of all of the specified conditions in all columns for each property.

To expand or collapse the details for an individual column, click the Expand column conditions and Collapse column conditions icons at the top of the column.

Note: When you save the rule form, the expanded and collapsed states of the columns are saved. When you re-open the rule form, it reflects the last state.

When the details are collapsed and conditions are specified for a property, the column displays the number of specified conditions (for example, 2). If the conditions are disabled, the number is grayed out.

Input-qualified validation

You can optionally provide different sets of validation conditions to be applied depending on the value of an input property, a proposed work status, or a flow action.

Using a property for input-qualified validation

For example, in a loan application, you might want to have different validation depending on the loan applicant's risk rating — if the rating is medium or high. Given an input property RiskRating that has Table Type of Local List, with values High Risk, Medium Risk, and Low Risk, in the validate rule form, you can define one set of validation conditions for High Risk and another set for Medium Risk:

  1. On the Input tab, specify the RiskRating property as the Input Property value.
  2. On the Validate tab, add columns, one for each risk rating, and specify the validate conditions to be applied to the input form properties.

Using input property to qualify validation

Using proposed work status for input-qualified validation

You can use proposed work status as the qualifier for input-qualified validation. In this case, a flow action form specifies a Proposed Work Status value. In the validate rule, by specifying the Proposed Work Status on the Input tab, you can qualify sets of validation conditions according to work status values (such as Pending-Approval or Pending-Investigation). At run time, when the system runs the validation rule from the flow action, it evaluates the set of validation conditions that corresponds to the Proposed Work Status value from the flow action.

Using proposed work status to qualify validation

Using a flow action for input-qualified validation

You can use a flow action as the qualifier. In the validate rule, by specifying the Flow Action Name on the Input tab, you can qualify sets of validation conditions according to the flow action. Select the ActionName key part of a flow action. This approach enables you to design a single rule that can be shared by multiple flow actions, each with its own set of conditions. For example, instead of designing a validation rule for each flow action in a screen flow, you can define the validation for the entire interaction in a single place making it easier to build, edit, and maintain.

Validation results

When executed, a validate rule adds messages to the clipboard page containing the properties that fail validation. This does not directly cause the messages to be presented to a user.

Note: You cannot use a validate rule to present a custom error message for the specific case of a user simply leaving a required field empty in an input form. In this case, the system presents a fixed message "This field may not be blank" to the user. (This is the case where the Validate tab has the Required check box selected for that particular property, no additional conditions to satisfy, and at run time the user leaves the field corresponding to that property blank in the input form.) If the validate rule specifies additional conditions (for example, a condition that the input value must be greater than a particular number) and a custom error message, and the user leaves the field blank, the system presents both the standard message "This field may not be blank" and the custom error message (because the blank input also fails the additional specified conditions).

Specifying the properties to be validated

Field

Description

Property  
Property

Specify each property that you want validated using this validate rule. Click Add a row to create additional rows. Do not specify linked properties.

Typically, you validate properties that appear in an HTML form as inputs (not display-only properties).

To see the specified property's rule form, or to create the property if it doesn't exist yet, click magnifying glass. To remove a property from the list, select the property's row and then click the delete icon.

The available validation details you can specify for a property depend on the type of property reference specified in the Property entry fields. You can specify the following items in the Property fields:

Validating a

Example reference

Validation details

Single-value property .CustomerType Directly validates that property (Validate)
Single-value property in a Page property .ItemToAdd.Name
(for Page property named ItemToAdd and single-value property Name in the page)
Directly validates that property (Validate)
Page property .ItemToAdd
(for Page property named ItemToAdd)
Calls another validate record (Call)
Single-value property in pages in a Page List property .Items().CategoryID
(for Page List property named Items and single-value property CategoryID in the pages)
Directly validate that property's value on each page (Validate Each)
Single-value property in a specific page in a Page List property .Items(1).CategoryID
(for the single-value property CategoryID in the first page of Items)
Directly validates that property's value on that page (Validate)
Page List property .Items()
(for Page List property named Items)
Calls another validate record for each page (Call for Each)
Page property in a specific page in a Page List property .Items(1).ItemToAdd
(for the page ItemToAdd in the first page of Items)
Calls another validate record (Call)
Single-value property in a Page Group property .ShipmentsGroup().TrackingNumber
(for Page Group property named ShipmentsGroup and single-value property TrackingNumber in the pages)
Directly validate that property's value on each page (Validate Each)
Single-value property in a specific page in a Page Group property .ShipmentsGroup(A).TrackingNumber
(for single-value property TrackingNumber on page A in ShipmentsGroup)
Directly validate that property's value on page A (Validate)
Page Group property .ShipmentsGroup()
(for Page Group property named ShipmentsGroup and Page property Shipments in that page group)
Calls another validate record for each page (Call for Each)
Page List in a specific page of a Page List .Items(1).Shipments()
(for Page List property named Items and Page List property named Shipments in that page list)
Calls another validate record for each page (Call for Each)
Page Group in a specific page of a Page List .Items(1).ShipmentsGroup()
(for Page List property named Items and Page Group property named Shipments in that page list)
Calls another validate record for each page (Call for Each)
Single-value property in pages in a Page List property in a Page property .ItemToAdd.Items().CategoryID
(for Page property ItemToAdd having an embedded Page List property named Items and single-value property CategoryID in the pages in Items)
Directly validate that property's value on each page in the page list (Validate Each)
Single-value property in a specific page of a Page List property in a Page property .ItemToAdd.Items(1).CategoryID
(for Page property ItemToAdd having an embedded Page List property named Items and single-value property CategoryID on page 1 of Items)
Directly validate that property's value on page 1 of the page list (Validate)
Value List .ValueList() Directly validate the values in the list (Validate Each)
Value Group .ValueGroup() Directly validate the values in the group (Validate Each)

Fields and controls in the Default Validation column

The following fields and controls are available in the Default Validation column. Each property specified in the Property list has a corresponding Req and Conditions pair in the Default Validation column.

If using input-qualified validation, use the Default Validation column to define the set of your least restrictive conditions. For example, if your input-qualified validation sets are based on the values of an input property, the Default Validation set would specify conditions that you want applied to the properties regardless of the input property's value. Then, in the columns for each input property value, select Default Validation for the Also Execute field, so that the system applies the default conditions after applying the conditions for the particular property value.

To display detailed information in the column, click Expand column conditions at the top of the column. Click Collapse column conditions to hide the details.

Field

Description

*Req

Displays an asterisk if the user is required at run time to enter a non-blank value for the corresponding property. See Setting validation conditions for a description of the Required check box that sets this requirement.

When a property is marked required, and the field is blank at run time when the form is submitted, the system associates the message:

This field may not be blank.

with the property. You cannot override this message.

If Required is not set, the blank value is allowed.

Conditions

Displays details about the validation specified for the corresponding property. To open the Validation Conditions window in which to specify conditions for the corresponding property (including enabling and disabling conditions) click:

  • Add — if no conditions are currently set (when the phrase No additional conditions is displayed).
  • Edit — if conditions are currently set.

Use the fields in the Validation Conditions window to specify the conditions. See Setting validation conditions.

Note: When the details are collapsed and conditions are specified, the number of specified conditions is displayed (for example, 2). If the conditions are disabled, the number is grayed out. Click the number to open the Validation Conditions window.

The following table describes the items displayed in the Conditions column:

When Conditions column displays
Conditions are specified and enabled

Details of the conditions

Conditions are specified but are disabled

Details of the conditions and the phrase [Conditions Disabled]. The text of the conditions details is grayed out.

Conditions are specified and the Continue validation check box is not selected for the validation conditions

Details of the conditions and the phrase Do not continue if validation fails.

If the evaluation of this property fails, the system does not evaluate the subsequent properties in the list, nor performs the validation specified in the Additional Validation field (if any). To specify that the system should continue validation of subsequent properties and any additional validation settings, even when the evaluation for this property fails, edit the conditions and select the Continue validation check box.

Property is a page, page list, or page group

Either Call or Call For Each (depending on the property's mode) and the name of another validate rule, followed by the Another validate rule is called icon icon.

When the to-be-validated property has a page mode, the system calls another validate rule that specifies the conditions on the page's embedded properties. To open the called validation rule, select its name. The called validate rule is specified in the Call Validate field in the Validation Conditions window.

Additional Validation

Specify any additional validate rules that you want the system to run after evaluating the previous validation settings. Click Add a row to specify more than one additional validate rule.

Fields and controls in value-qualified validation columns

When using input-qualified validation, you specify sets of validation conditions according to the values of the input property, proposed work status, or flow action.When using input-qualified validation, click the Add a row button displayed to the right of the Default Validation column to add the columns for specifying each value-qualified validation set. To delete a column, set your pointer in a field in that column and click the delete icon.

The following fields and controls are available in each value-qualified validation column.

To display detailed information in a column, click Expand column conditions at the top of the column. Click Collapse column conditions to hide the details.

Field

Description

Input

Displayed if the Input tab specifies input-qualified validation, using an input property, proposed work status, or flow action. The displayed label is:

  • Input: Label — when validation is qualified by an input property. The displayed label is the label entered for the input property on the Input tab (such as Category).
  • Input: Proposed Work Status — when validation is qualified by a proposed work status (Proposed Work Status is selected on the Input tab).
  • Input: Flow Action Name — when validation is qualified by a proposed flow action (Flow Action Name is selected on the Input tab).

In the entry field, specify the value of the input property, proposed work status, or flow action that corresponds to this particular set of validation conditions.

For example, given an input property of Department, that has a local list of Table Values of HR, Engineering, and Legal, specify each value in the entry fields at the top of each column. The form refreshes the column heading to reflect the entered value:

Example of validation sets for Department input property values HR, Engineering, and Legal
Precondition

Displayed for input-qualified validation. In the entry field in a column, specify a when condition rule to apply before evaluating the validation conditions in that column. To see the specified when condition's rule form, or to create the rule if it doesn't exist yet, click magnifying glass.

*Req

Displays an asterisk if the user is required at run time to enter a non-blank value for the corresponding property. See Setting validation conditions for a description of the Required check box that sets this requirement.

When a property is marked required, and the field is blank at run time when the form is submitted, the system associates the message:

This field may not be blank.

with the property. You cannot override this message.

If Required is not set, the blank value is allowed.

Conditions

Displays details about the validation specified for the corresponding property. To open the Validation Conditions window in which to specify conditions for the corresponding property (including enabling and disabling conditions) click:

  • Add — if no conditions are currently set (when the phrase No additional conditions is displayed).
  • Edit — if conditions are currently set.

Use the fields in the Validation Conditions window to specify the conditions. See Setting validation conditions.

Note: When the details are collapsed and conditions are specified, the number of specified conditions is displayed (for example, 2). If the conditions are disabled, the number is grayed out. Click the number to open the Validation Conditions window.

The following table describes the items displayed in the Conditions column:

When Conditions column displays
Conditions are specified and enabled

Details of the conditions

Conditions are specified but are disabled

Details of the conditions and the phrase [Conditions Disabled]. The text of the conditions details is grayed out.

Conditions are specified and the Continue validation check box is not selected for the validation conditions

Details of the conditions and the phrase Do not continue if validation fails.

If the evaluation of this property fails, the system does not evaluate the subsequent properties in the list, nor performs the validation specified in the Also Execute or Additional Validation fields (if any). To specify that the system should continue validation of subsequent properties and any additional validation settings, even when the evaluation for this property fails, edit the conditions and select the Continue validation check box.

Property is a page, page list, or page group

Either Call or Call For Each (depending on the property's mode) and the name of another validate rule, followed by the Another validate rule is called icon icon.

When the to-be-validated property has a page mode, the system calls another validate rule that specifies the conditions on the page's embedded properties. To open the called validation rule, select its name. The called validate rule is specified in the Call Validate field in the Validation Conditions window.

Also Execute

Specifies another set (column) of validation conditions to evaluate after evaluating and passing the set of conditions in this column. The selected set of validation conditions is another set defined on the Validate tab. Typically, you select Default Validation to have the system evaluate the default conditions after evaluating the specific conditions in this column.

At run time, for a given to-be-validated property, the conditions specified in the applicable value-qualified column "win". For example, when:

  1. Conditions are specified for a property in a value-qualified (labeled) column, with Continue Validation selected.
  2. Conditions are also specified for that property in the Default Validation column.
  3. Default Validation is selected in the Also Execute field.

At run time, the system first looks to see if there is input-qualified validation when it applies this validation rule. If so, the system locates the value-qualified column that corresponds to the run time value of the input property or proposed work status, and then evaluates the conditions in that column. If not all of the conditions in that column are satisfied (the property fails validation for that value-qualified column) and Continue Validation is specified, then the system looks at the Also Execute selection and evaluates that column. However, if the property has satisfied all of its corresponding conditions in the first evaluated column, then it is considered to be valid and the subsequent column is not evaluated.

Additional Validation

Specify any additional validate rules that you want the system to run after evaluating the previous validation settings. Click Add a row to specify more than one additional validate rule. Click the delete icon to delete a row. To see the specified validate rule, or to create the rule if it doesn't exist yet, click magnifying glass.

Setting validation conditions

To specify validation conditions for a particular property listed on the Validate tab, click either Add (if no conditions are currently set) or Edit (if conditions are currently set) in the property's corresponding Conditions column. The Validation Conditions window opens.

Use the following fields in the Validation Conditions window to specify the conditions on the to-be-evaluated property. See Specifying the properties to be validated for which validation types are associated with which property references.

For Validate and Validate Each:

Field

Description

Required?

Select to require the user at run time to enter a non-blank value for the corresponding property. If selected and the field is blank at run time when the form is submitted, the system associates the message:

This field may not be blank.

with the property. You cannot override this message.

If not selected, the blank value is allowed.

Do not select this check box for a field that appears at run time as a check box, because the cleared (unchecked) value might correspond to blank.

Enable Conditions

Select to enable the specified conditions on the corresponding property on the Validate tab. Clear the check box to disable the conditions.

If

This area defines the validation conditions. To specify a condition:

  1. Use the autocomplete (Autocomplete) in the Select a function field to select the function that the system evaluates at run time. The window refreshes to reflect the selected function and displays entry fields to specify any parameters needed for the selection.
  2. Specify the parameters (as needed) for the selection.

Optionally add more conditions by clicking Add a row to add more rows. For each additional row, select OR or AND to specify the logical relationship between the conditions.

To use a different function for a condition, first clear the function by clicking Clear function field, and then use the autocomplete (Autocomplete) to select another function.

To remove a condition, click the delete icon.

For functions that involve expressions, you can click Open Expression Builder to use the Expression Builder to help you in specifying the expression.

Message

Optional. Specify the message that is displayed to the user at run time if the evaluation of the validation conditions fails. You can enter text or use the SmartPrompt to select the name of a message. The list of available options is limited to Error and blank category messages.

If the message rule accepts numbered parameters, follow the message rule's name with a backslash character, the letter t, and an optional literal text value for the parameter. For example, if the message NoSuchCustomer accepts parameters {1}, {2} and {3}, you can enter:

NoSuchCustomer\tyou\tMaster Account system\tmonth-end

Do not reference property values or parameter page values as message parameters.

Continue Validation

Select to have the system continue evaluating subsequent properties, even if the current evaluation fails.

For Call and Call For Each:

Field

Description

Call Validate

Specify a validate rule. The system uses the specified rule to evaluate the properties in the page, page list, or page group.

Continue Validation

Indicates that the system continues evaluating subsequent properties, even if the current evaluation fails.

About Validate rules