WorkflowEngine v5.0 Release Notes
-
Designer
- π Designer windows have been reworked to behave as non-modal which allows:
- to keep them open while working with a scheme.
- to open multiple windows, change their size and behavior.
- π Customization of Designer windows is now simplified; each window is represented by a Vue.js template which can be now altered independently from the rest of the Designer.
- Customization of Designer toolbars simplified.
- A Designer library of typical schemes added which represent most frequently used blocks which can be dragged onto your schemas.
- A library of custom activities added; these are single action activities whose settings are adjustable within the form.
- 0οΈβ£ Forms to edit properties of activities and transitions now have two viewing modes - Default and Expert. The Default mode represents only the essential and most used settings, while the Expert mode combines all the settings.
Sub-processes
- Sub-processes can now be launched in a separate thread to allow for physical parallelism at the scheme level.
- Methods to copy parameters into a sub-process can now be carried out using the following options:
- copy all parameters (default option, previously available)
- not to copy parameters
- only copy specified parameters
- ignore specified parameters.
- π New feature to specify a method to transfer sub-process parameters on to its parent process when merging. The following options are available:
- transfer only the parameters absent in the parent process (default option, previously available)
- transfer all parameters
- only copy indicated parameters
- ignore indicated parameters.
- π New feature to cleary indicate whether a particular transition starts a sub-process or finalizes it; previously identified automatically, the transition can be now obviously set.
- π New feature to specify a sub-process name which can be represented as a simple string or a calculated expression; expressions can consume parameters (this is syntactically similar to conditional expressions). In this way, new sub-processes can be created simply by changing paramater values used when a sub-process name is generated. As an example, consider creating an invoice approval scheme where the invoice will contain several product items. It is now possible to design a scheme in which approval of the items will be represented by a sub-process. Furthermore, by combining loops (in the plugin) and sub-process naming calculations a sub-process for each product item can be created.
- π New feature to specify a sub-process id, or calculate it based on the parameters; herein, substitutions are used - not expressions.
Persistence Providers
- All persistence providers are implemented as completely asynchronous. As a result, the WFE core operates in a completely asynchronous fashion suitable for scalability.
- .NET Core provider for MsSql utilizes Microsoft.Data.SqlClient instead of System.Data.SqlClient.
Workflow Runtime
- Method Resume is added to API Workflow Runtime. Contrary to the SetSatate method, it does not execute a current activity, or a set one, but rather attempts to continue execution of the process. This method can be used to go on with a process execution after a failure, or in the case of changes in external conditions.
- Restorer Restore Decision Resume added.
- π New in the ProcessInstance class:
- Indexer for getting and setting paramater values
- Methods to manipulate root process parameters from within a sub-process.
- For all standard events, now exist their asynchronous counterparts.
π Plugins
- π¦ FTP ΠΈ SFTP support added to the File Plugin. Attention. File Plugin is supplied as a seperate Nuget package/dll
- π New plugin, Loops Plugin, added for simple implementation of the for and foreach.
- π Within the action BasicPlugin.HttpRequest you can specify the name of the paramater which is to hold the result.
- π Within the action BasicPlugin.SetParameter, and the BasicPlugin.CheckParameter condition, you can set and verify the root process' paramaters.
- π Many new conditions added to BasicPlugin.CheckParameter ΠΈ BasicPlugin.CheckHTTPRequest.
- π New plugins added for interaction with Slack, Telegram, Twilio, Nexmo are provided as Nuget packages (dlls).
- π Designer windows have been reworked to behave as non-modal which allows: