The Trigger in a Workflow is the event needs to happen in order for the Workflow to run. There are also a number of additional filters that can be applied to further specify when exactly the workflow will run.
On the left panel, you'll see a list of trigger nodes. To begin your workflow, either drag a trigger node into the workspace or click on the empty node.
When you drop a node onto the workspace, the edit node window appears, allowing you to specify whether this trigger can be triggered only by a specific team or user. Additionally, you can include notes.
Triggers with Use Cases:
- Scheduled Job: This allows you to state a fixed time interval when workflow will run independently of any change to a particular record. This can be run on repeat on a regular basis and it its self can trigger other workflow. I good use case of this is to run a workflow that checks for any overdue action and then sends an email to notify the owner. - Here is a helpful video on this - Automated Expiry Workflow – Softools
- Button Clicked: This allows you to assign a workflow to a image action button field, this means when the button is clicked in workspace it will then trigger the workflow. This can be useful for sending out updates and report in a single click on the record.
- Child Record Created: This event will be triggered by a Child Record on it's creation. This workflow could be to set Full Access to a Risk Owner on a Risk Record when it is created as a Child of a Project.
- Child Record Link Added: This event will be triggered from a Child record when it has been linked to a Parent. It could be to show a Form on a Child Question that contains metadata passed down from the Parent Audit when the Question is linked.
- Comment Added: Comment added will trigger a workflow when a user adds a comment to a record via the Comments icon in the bottom right of the screen. This could generate a notification to a Financial Lead that a comment has been added to a Monthly Financial Record.
- Field Updated: This event will only trigger the workflow when the value of a given Field(s) is changed to meet the Trigger App Filter Criteria. An example for use of this event would be to archive a Project if the Status changes to Unapproved. The trigger app Filter would be Status equals Unapproved and the Action could be to Archive the Record. Then, if the status value is updated and is now Unapproved the Project will be archived.
- Record Any Change: This event is a combination of all the following Record Events. An example Action for this trigger could be to notify users via a slack channel logging recent record activity in an App.
- Note: This Trigger could generate a high number of workflows if the App is in high usage so be cautious .
- Record Archived & Record Un-Archived: This will trigger an Action when a Record is archived or un-archived. A use case here could be to hide forms containing detailed WorkPlan information when a WorkPlan is archived and then show the forms again when the WorkPlan is un-archived.
- Record Copied: This event will trigger on a Record when it is copied. This could be used to lock down record access on monthly Financial records. When a month is copied via template copy to start the new month, the month that it was copied from has an action on it to set Read-Only access to the current Users team, preventing users in that team from making updates.
- Record Created: This will run a workflow on creation of a new record. An example Action for this trigger could be that when creating a new Audit it copy and links a set of Child Questions to the Audit from a master list of Questions.
- Record Linked to Parent: This will trigger a workflow from a Parent record when a Child record has been linked to it. It could be used to send out an email with Summary Financial information for a Project every time a Child Resource is added.
- Note: This workflow should be used in Apps where few child records are added over time. Otherwise it will generate a number of workflows if multiple child records are added in quick succession.
- Record Updated: This event will be triggered on every save of a record except for it's creation. A typical example would be to email an Action Owner key Field information every time their Action has been updated.
- Note: Record update does not include Record created event. If the workflow needs to run on Record creation and Record update you will need to create one workflow for each event trigger. Record updated event can be filtered down further to only act when particular Fields change value by using the Field updated event.
- Enacted By Specific Team: You can filter down when the workflow will run to specific Teams. If you only want the workflow to run when Users in a specific Team meet the event criteria then select this team. You can select multiple teams more easily by using the arrow keys and hitting enter to select.
- Enacted By Specific User: Similar to choosing specific teams, you can also select specific users. Select which Users will trigger the workflow when the event is met here.
- Note: If specific Teams and Users have been selected then it will run if either the user is selected or the user is a member of a team selected. If no specific teams or users have been selected then the workflow can be triggered by all Users.
- Notes: Notes is a really useful area for new app builders or collaborating app builders, this allows you to note down what the purpose of each node is used for to help yourself if you make changes down the line or for other app builders who work on the app and need some context
The last layer of filtering is to specify when a workflow will run based on the event happening and also Field criteria being met.
NOTE: A more user friendly way of setting Filters is coming soon, for now entering Filters via string format is supported - See here for information on string Filters.
Make sure to click the 'Save' button when making any changes in order for them to be added to the next app version. Once you have made all the changes you need to an application you are then ready to publish it to workspace.