Introduction
Ultimate Forms is a complete platform for no-code implementation of business solutions in Microsoft SharePoint. It allows non-technical personnel to quickly and easily create a variety of common business processes, such as Help Desk, Vacation Request or Project Management.
Ultimate Forms contains a variety of component, covering various aspect of solution implementation. Forms and specialized column types ensure convenient and error-free data entry. Web parts help you build web part pages and dashboards. The various automation components allow you to send emails, integrate external applications and perform data updates according to your business rules.
Front-end vs Back-end
Ultimate Forms components can be broadly divided into two categories:
- Front-end components - visible to user, they help enter and view data. Forms, column types, Calendar, Print and Charts (and some others) belong to this category.
- Back-end components - execute business logic behind the scenes, configured by administrators and usually invisible to end users. Actions, Alerts, Import and Item ID are some of these components.
Back-end components are usually executed indirectly (although for most manual execution options are available as well). Triggers for execution can be various events (whenever an item is added, modified or deleted) and timer-based triggers (2 days before due date or every 15 minutes).
As you can see, front-end and back-end components normally do not interact directly. They interact through changes in data: forms update the data and that triggers some back-end execution.
Manual Actions
In some scenarios however we do want to trigger actions directly from the form, without relying on events. For example, some event types do not exist in SharePoint list. One such event is the common requirement of logging when users view an item. Another reason could be that the list undergoes frequent massive automatic updates, that would cause the actions to be throttled when used with events.
We support triggering actions in two ways:
- Via buttons - there is a special button type "Trigger action"
- Via form events (such as form opened/close and item added/modified)
Let's See a Demo
I'm going to present an example of form-triggered action. We are going to increment a number column "Views" each time someone open the item in Edit or Display form.
- Create a simple list and add a number column called Views.
- Click on Design from the toolbar of the list, then click on Actions.
- We are adding and Update list item action that is going to increment Views column value (Views + 1)
- Under Action settings we will enter Views = [Views]+1, this is our formula.
- Under General settings make sure to uncheck all event types. We are going to be triggering this action from the form, so we don't want it to then trigger again through events.
- Once we've created our action, let's design our form. Click on Form Designer and create a form similar to this:
- We will set permissions on Views column to make it hidden in New form and read-only in Edit and Display forms. We need to do that as we don't want users to modify its value directly.
- Now, click on Actions button on the top toolbar.
- Here select our action under Form is opened event. Note that you can of course use Form is closed as well. But note that it will not execute the user simply closed the browser or navigates to another page without using buttons.
- Publish the form and create our first test item in the list.
Trying It Out
- Open the item for display a few times and see the Views counter updated (allow a few seconds for the action to run, it is not immediate).
I'm sure you will find this new feature useful for various scenarios you are implementing using Ultimate Forms!