Frequently Asked Questions #
Configuration Modes #
- How do advanced and simple configuration modes work?
On some rules and modules, configuration mode can be set to either Simple or Advanced. When Advanced configuration mode is selected, you get to see and set some additional, advanced settings for the rule or module. Once you configure these settings, they are applied and used even if you switch back to Simple configuration mode. Advanced settings are not reset to their default values when hidden. Instead, you should reset them manually.
Rule Execution #
- What to do when the module doesn’t execute rules?
- Make sure to enable the module.
- Make sure to enable the rule.
- Check Logs (You can find the logs path defined in the Extension Kit configuration under Logging → Logging destinations → File).
- How are RunOnce rule executed?
RunOnce rules are executed on demand when you click on Execute RunOnce rules in the application dashboard. When multiple RunOnce rules are active, all of them will be executed at once.
- What is the difference between Background and BackgroundTransaction execution mode?
Extension Kit rules can be executed in these modes: EventHandler, Background, and BackgroundTransaction.
EventHandler rules are executed during the event that triggered them, specifically in the BeforeCheckInChangesFinalize event handler. This occurs before an object is checked in but after state transitions and signatures have been finalized. Workflow changes are not allowed in this event handler. If a rule is configured to modify the object’s state, the change will be executed in the background after the event handler has finished. Rules executed in this mode take advantage of M-Files event handlers’ transactionality, meaning any changes they make to the vault are rolled back if an error occurs. However, they are subject to all event handler constraints, most notable being the 90-seconds timeout.
Background rules are executed in the background, after the event that caused them has finished. When Background mode is selected, rules are not transactional. This means that these tasks run independently of any transaction and do not roll back changes if a failure occurs during execution.
To have transactional behavior in the background, the BackgroundTransaction execution mode should be selected in the configuration. This mode ensures that tasks run within the context of a transaction, allowing any changes made by the task to be rolled back if the transaction fails.
In some modules, such as Object Creator, the execution mode can be set in advanced rule configuration. However, for most modules, the execution mode is set to an appropriate version by default and cannot be changed.
Rule Triggering #
- Is it possible to send an email when a user writes a comment?
One of the available triggers inside the Extension Kit is “On comment”. You can specify recipients and content of the emails that need to be sent on a comment.
- Is it possible to use the children objects as triggers instead of the parent?
Yes, it is possible, and it will be triggered if both Parent or Children change.
For more FAQs, visit the Toolkit Community.