Skip to main content

Adding Business Rules to Dynamic Forms

Configure show/hide rules, text validation, and conditional logic in form fields.

Written by James Ross

Business Rules add conditional logic to your dynamic forms. They control when fields are shown or hidden, validate input against specific patterns, and define behaviour based on user selections.

Why Use Business Rules?

Rules keep forms simple for the person filling them in and cleaner for the person reporting on them:

  • Show only what is relevant - a form with 30 visible fields is harder to complete than one that adapts. Hiding irrelevant questions reduces effort and reduces wrong answers.

  • Guide the user - conditional fields act as prompts (tick "Has Vehicle" and the plate field appears), so users don't need to interpret instructions.

  • Capture clean data at the point of entry - validation rules stop malformed input (bad emails, implausible numbers) before it reaches your records, instead of cleaning it up later.

What Can Business Rules Do?

  • Show/Hide fields - display a field only when a condition is met (e.g. show "License Plate" only when "Has Vehicle" is checked)

  • Text validation - enforce minimum/maximum length, or require input to match a pattern (e.g. letters only)

  • Conditional logic - trigger different behaviours based on dropdown selections, checkbox states, or other field values

Adding a Show/Hide Rule

Quick Steps

  • Open the form designer with at least two fields (e.g. a checkbox "Has Vehicle" and a text field "License Plate")

  • In the right-hand side diagram content menu, select the business rules icon

    . All the business rules that exist on this form will be listed.

  • Select the PLUS icon to add a new rule. The 'Add business rule' card will open up.

  • Add the rule name.

  • Toggle whether this rule should be active (on by default).

  • Select whether 'ANY' or 'ALL' conditions should be matched:

    • Match ALL - Every condition must be true for the rule to trigger.

    • Match ANY - At least one condition must be true for the rule to trigger.

  • Select the trigger field in the WHEN condition (e.g. "Has Vehicle"). The available condition options populate automatically based on the field type:

    • Check Box fields - the condition value selector offers Checked or Not checked

    • Dropdown and Radio Button fields - the condition value selector shows the options configured on that field (e.g. "Option 1", "Option 2", "Option 3")

    • Text, Number, and Date fields - a free-text value input is shown so you can enter the value to match

  • Select the condition value from the available options (or enter a value for text-based fields).

  • In the THEN action, select the action (e.g. "Show" this field) and the target field (e.g. "License Plate").

  • Save the rule.

Important: The condition options update automatically when you change the trigger field. Always confirm the correct options are shown before saving - the options displayed are the ones configured on the field itself.

Testing the Rule

  • Preview the form with the trigger field in its default state (e.g. "Has Vehicle" unchecked) - the conditional field should be hidden

  • Change the trigger (e.g. check "Has Vehicle") - the conditional field should appear

  • Revert the trigger - the field should hide again and its value should be cleared

Adding Text Field Validation Rules

Text fields support additional validation beyond the Required toggle:

  • Select a text field and open the Rules / Business Rules panel

  • Set minimum length (e.g. 3 characters)

  • Set maximum length (e.g. 50 characters)

  • Set a pattern regex (e.g. ^[A-Za-z ]+$ for letters only)

  • Save the rules

Validation Behaviour

  • Input shorter than the minimum length - validation error

  • Input longer than the maximum length - validation error

  • Input that doesn't match the pattern - validation error

  • Input that meets all criteria - accepted

Editing a Business Rule

  • Select the field with the rule

  • Open the Business Rules panel

  • Click to edit the rule - the rule editor opens with current conditions pre-filled

  • Modify the condition (e.g. change the trigger value)

  • Save and preview to verify the updated behaviour

Deleting a Business Rule

  • Select the field with the rule

  • Open the Business Rules panel

  • Delete the rule

  • Preview the form - the field should now behave normally (e.g. always visible if the show/hide rule was removed)

Important: Deleting a rule does not restore field values that were cleared by the rule. If a show/hide rule cleared a field's value when hidden, that value remains empty after the rule is deleted.

Default Value Rules

Certain field types support Default Value rules that pre-populate a field when the form is opened. These save the user typing and reduce omissions - the field arrives already filled and the user only changes it if needed. Default Value rules are configured on the Rules tab of the field in the form designer.

Date Field - currentDate()

Date fields offer a Default value selector on the Rules tab with two options:

  • None - no default (the field starts empty)

  • currentDate() - automatically fills the field with today's date

Behaviour:

  • When the form is opened and the date field is empty, currentDate() fills it with today's date

  • If the field already has a saved value, currentDate() does not overwrite it - the existing value is preserved

Important: currentDate() is a one-time default on form open. It does not update dynamically if the form remains open past midnight.

Select User Field - currentUser()

Select User fields offer a Default value selector on the Rules tab with two options:

  • None - no default (the field starts empty)

  • currentUser() - automatically pre-fills the field with the logged-in user

Behaviour:

  • When the form is opened and the field is empty, currentUser() pre-fills it with the person viewing the form

  • If the field already has a saved value, currentUser() does not overwrite it - the existing value is preserved

  • If the current user is not in the selectable list for that field, the field stays empty - no error is shown

  • currentUser() works on Select User fields inside repeaters - each new repeater row defaults to the current user

Important: currentUser() resolves to the person viewing the form, not the person who originally submitted it. On reopen, the saved value takes precedence.

Further Information

For configuring field properties, see Dynamic Forms: Form Field Details, Properties, Rules. For previewing and testing rules, see Previewing and Testing a Dynamic Form.

Did this answer your question?