Workflows are powerful tools that allow you to automate processes and procedures in the DataEngine. In this post, we will delve into the detailed use of workflows to ensure that you can make the best use of this feature.
Basic Settings
Before we go deep, let’s take a look at the basic settings for workflows. We will consider aspects such as the workflow name, the associated workflow module, and trigger options. Workflows can be activated in various scenarios, including “Always,” “Only on Save,” and “Only on Scheduler.” Choose the option that best suits your requirements. You can also specify whether the workflow should run repeatedly and whether it should be triggered for import operations, all records, only modified records, or only new records.
In addition, the “Workflow Order” field provides the option to determine the sequence of workflows. Smaller numbers are executed first, followed by higher numbers. This is particularly crucial when workflows build upon each other, and the execution order is significant. Furthermore, you can specify whether the “Date Modified” field of the record should be reset. This option should generally remain enabled and only affects workflows processed by the scheduler.
Workflow Scheduler
A workflow can be triggered by the scheduler, typically running every minute. There is also the option to create a custom scheduler using the “Process AOW Workflow (Custom In Scheduler)” feature. This custom scheduler can then be selected during the configuration of the workflow under “Run.” Workflows utilizing a custom scheduler will only be executed if this specific scheduler is active; otherwise, no triggering will occur. A practical example of this would be a scheduler performing a calculation for all records once a week. In such cases, it is advisable to disable the “Update Date Modified” option.
Workflow Execution Conditions
Workflow execution is controlled by conditions. You can create conditions based on fields, values, and operations. Various logical operators are available to combine conditions, allowing you to specify precisely when the workflow should be triggered. You have the option to link multiple conditions to refine your workflow logic.
Relationship Matching Logic
An important aspect of workflow creation is the Relationship Matching Logic. If a condition includes a field from a 1:n relationship, you can specify whether the condition should apply to “at least one” or “all” records in that relationship. This option allows fine-tuned control of workflow logic based on the relationships between records.
Handling Empty Date Entries
In workflows, you may need to process date entries. It’s important to note that empty date entries should always be compared to NULL. This practice ensures the correct execution of your workflow logic.
Dealing with arbitrary changes
The following types are possible as comparisons in the conditions:
- Value
Here you can check against a specific value that should be entered in the Value field. - Field
With a field, you select a specific field and check the conditions against the field - Any change
With any change, the system checks whether the field has been changed since the last backup. Please note that the last backup is decisive. It is therefore not advisable to use the condition in a workflow if other workflows have already changed the data record. In this case, no change would be recognised.
Workflow Actions
Now that we’ve covered the basics, let’s take a look at the various actions that can be performed in workflows. The DataEngine offers a wide range of actions, including:
- Create / Modify Record: Create or modify records in the DataEngine.
- Delete Record: Delete records.
- Lookup Record: Search for records to establish relationships.
- Calculated Fields: Calculate field values based on other fields.
- JSON Path: Extract data from JSON structures. Documentation
- JSON Array Split/Join: Join/Split JSON Array data into related records. Documentation
- Trigger Hub Sync: Trigger a Hub synchronization.
- Send Email: Send emails.
- DeepL Translation: Translate text content using DeepL.
- ChatGPT: Interact with the ChatGPT model.
These diverse actions allow you to implement a wide range of automations and integrations into your workflows.