The Power of Conditions in Ultimate Forms: Turn Data into Decisions
In every good business form or automation process, knowing when something should happen is just as important as what happens. Conditions in Infowise Ultimate Forms are the glue that lets your SharePoint solutions behave intelligently — they control validation, visibility, actions, alerts, and every other logic trigger. Conditions let you move beyond “catch all” settings, and hone in on exactly when something should fire.
Below, we explore what conditions are, the many ways to use them, real-world examples, and key best practices to master them.
What Are Conditions?
At their heart, conditions are logical statements or expressions that evaluate data (from columns, system values, previous states) and yield true/false outcomes. Based on how they evaluate, Ultimate Forms takes different paths:
-
Show or hide columns, tabs, containers
-
Enable or disable inputs
-
Validate inputs or block form submission
-
Choose the most appropriate print template
Conditions help ensure your forms and processes respond dynamically. For example, only show the “Manager Approval” tab if the project budget exceeds a threshold. Or only alert when a status changes from Pending to Approved.
Key Capabilities & Types of Conditions
Here are the core types of conditions that Ultimate Forms supports, and what they enable you to do.
Validation Conditions
-
Ensure data entered meets certain criteria before allowing save.
-
Examples: check that a number is in a certain range, text matches a pattern, required columns are not blank.
-
You get immediate feedback—users can’t submit forms with invalid or missing data.
Functions & Expressions
-
Conditions aren’t limited to direct comparisons; you can use functions. Examples include extracting parts of a text, manipulating dates (getting year, month, days difference), or parsing strings.
-
Functions like
$Year()
,$Extract()
allow more complex logic (e.g. if the fiscal year of the Request Date column is last year, then alert or hide certain columns).
After-Change Conditions
-
Sometimes you care not only what a column is now, but what it was before. "After Change" conditions let you detect when something has changed into a value you care about.
-
Useful for things like “send email only when status changes to Approved” (not every time someone edits the record while its status is already Approved).
Data Type-Specific Operators
-
The operators you see in condition builders adapt to the data type.
-
Text columns: contains, equals, in, etc.
-
Numeric and Date columns: greater or less than, greater or equal, etc.
-
-
This reduces confusion and avoids invalid comparisons (e.g. comparing date to number, or string mismatches).
Combining Conditions — Conjunctions (AND / OR)
-
Often, a single condition isn't enough. You might want “if column A is X and column B is Y, or column C is Z.”
-
Ultimate Forms lets you chain conditions using AND or OR to build complex logic without writing code.
Internal Column Names & Stability
-
Conditions reference internal column names, which are assigned behind the scenes when a column is created. These do not change even if you rename the column or change language settings.
-
You always see display names when building conditions, so you don’t need to memorize internal names. This design helps avoid broken references when you rename columns at a later time.
Real-Life Examples of How Conditions Are Used
Here are several real-world scenarios to illustrate how conditions can enable smarter, more responsive forms and workflows.
Example 1: Approval based on Budget
-
Form has a Budget column. If Budget > $10,000, show “Senior Manager Approval” tab. If ≤ $10,000, skip that tab.
-
Also validate: if budget is entered and approver is required, ensure approver is selected before saving.
Example 2: Send Alert Only When Status Changes
-
List of purchase requests with status: Draft → Submitted → Approved → Rejected.
-
You want an email alert to go out only when Status becomes Approved (i.e. on the transition, not every save after).
-
Use “After Change” condition: Status after change = Approved. Behind the scenes it will automatically check the previous value of Status. The condition is passed only when the previous value is not Approved.
Example 3: Dynamic Column Visibility Based on User Role
-
You can a Reason choice column with an option Other. "Explanation" column is only visible when Other is selected.
-
Condition looks at current value of Reason and hides or shows "Explanation" column in real time accordingly.
Example 4: Form Variants Based on Choice Columns
-
A form has a Choice column “Type of Request” with options “Hardware” and “Software”.
-
If user selects “Hardware”, show hardware specification columns; if “Software”, show license details;.
Example 5: Device-specific Layout
-
Certain elements on a form only need to appear when the form is opened on a desktop
-
Conditions detect the device type and display elements accordingly.
How Conditions Tie In with Other Features
Conditions integrate deeply with many Ultimate Forms features. Here’s how they combine to unlock great value:
-
Actions & Alerts: Only fire when conditions are met. For example, auto-assign a task or send emails only under certain logic.
-
Container, Tab & Column Permissions: Hide or make read-only columns dynamically.
-
Validation Rules: Block form submission if certain conditions not satisfied.
-
Fragments & Help Text: Show fragments or instructions only in relevant situations—e.g. display process diagrams when column value is “Yes”.
-
Summary Columns: Use condition logic to calculate summaries for specific subitems only. For example, count the number of open tasks only.
Best Practices & Tips
To use conditions effectively and avoid pitfalls, here are best practices and design tips compiled from years of working with Ultimate Forms:
-
Keep Conditions Readable
Use descriptive display names, avoid overly chaining many AND/OR rules unless necessary. If logic becomes complex, break into smaller parts (maybe using intermediate columns). -
Test After Each Change
After setting up a condition, simulate different values and states. Make sure visibility, validation, and behavior works for all possible paths. -
Manage Performance
Many dynamic conditions on many columns can affect form load times, especially on complex forms or slower devices. Use condition rules judiciously. -
Document Your Logic
If someone else needs to maintain or update the logic later, plain text comment or design document helps. Describe what each condition is supposed to do. -
Use After-Change Wisely
The difference between comparing current values vs detecting transitions is important. Use after-change when only really interested in changes (e.g. triggering something only once). -
Use Data Type Correctly
Matching operator to data type reduces errors. Don’t try to compare text and date columns, or mis-use conditions that don’t make sense for a column’s type. -
Language & Internal Naming Considerations
Remember that internal column names are stable, so renaming or language changes don’t break things. This means you can rename columns for display without fear of breaking logic. -
Fallbacks & Defaults
In cases where conditions don’t match (for example, neither A nor B), ensure form has sensible default behavior — either show minimal set of columns or default actions.
Why Conditions Are a Game-Changer
-
They allow precision: instead of blanket logic, your forms can act differently depending on context.
-
They improve user experience, since users only see what they need, when they need it.
-
They reduce errors, confusion, and redundant data entry (columns that don’t apply won’t distract or confuse).
-
They enable smarter automation and more efficient workflows.
Summary
Conditions are one of the foundational features in Infowise Ultimate Forms that let you build smart, responsive, context-aware SharePoint solutions — all without writing code. By leveraging built-in operators, functions, after-change logic, and combining them with validation, visibility, permissions, and actions, you create forms that adapt to what users do, care about, and need.