Workflow Creation: General Information
The process of creating a workflow does not require coding. Instead, you can use pages of the Customization Project Editor, which make it easy to work with the workflow and its components.
Before you can add a workflow, the screen corresponding to the form must be added to the list of customized screens on the Customized Screens page. To define a workflow, you use the pages organized under the Screens node in the navigation pane of the Customization Project Editor for a particular form.
Learning Objectives
In this lesson, you will learn how to use the Workflow (Tree View) page, and how to create a workflow from scratch.
Applicable Scenarios
You create a workflow when you need to implement a custom business process for an MYOB Acumatica form and this form does not have any workflow or has a workflow that does not fit your business processes.
Creation of a Workflow for a Form
When you define a workflow for a particular form, you need to do the following:
- Determine all possible states of the record that users work with on the particular form, and define those that do not already exist.
- For each state, add all actions that can be performed with a record in this state and all transitions associated with each action.
- Optional: When an action is invoked, if a user has to provide additional information for the record to transition to a different state, define the dialog boxes that contain the UI elements whose settings should be specified.
- Optional: If some modifications to the form elements (that is, whether they appear, are available, and are required) are needed, specify which UI elements on the applicable form are shown, enabled, and required for each state of the workflow.
- Optional: If some modifications to the form actions are needed, specify which commands on the applicable form should have connotations and should be duplicated on the form toolbar (in addition to being shown on the More menu) for each state of the workflow.
- Optional: If the values of certain fields should be updated after a transition, add new values for the fields.
- Optional: If some modifications to the form fields are needed when the record enters a particular state or when it leaves it, add new values for these fields (for details, see Composite States: General Information).
- Optional: If certain states have similar properties or can be skipped under certain conditions, add these states to a composite state (for details, see Composite States: General Information).
Creation of Multiple Workflows for a Form
You can add multiple workflows for a particular form. In this case, each workflow is applied to all records that have a specific value in a particular field, which can thus be described as a workflow-identifying field because its value determines the workflow to be used.
For example, for opportunities on the Opportunities (CR304000) form, one workflow can be applied to opportunities for which one opportunity class is selected, and another workflow can be applied to opportunities for which another class is selected.
For details on creating or customizing a workflow with workflow-identifying field, see Workflow-Identifying Fields: General Information.
Primary Pages for Workflow Creation and Editing
For any screen that has been added to the Customized Screens page, you can use the Workflows page to view the workflows and their general settings. (The table on the page is empty if no workflows have been defined for the screen.) To open this page, in the navigation pane of the Customization Project Editor, you click Workflows under the form ID.
You can click Add Workflow on the page toolbar, which opens the Workflow (Tree View) page. This page, which is sometimes called the Workflow Editor, is the primary page that you will use when you are developing or modifying a workflow. By clicking Diagram View on the page toolbar, you can work with the Workflow (Diagram View) page. The diagram view is also referred to as the Workflow Visual Editor.
To use the Workflow (Tree View) page for an existing workflow, you can click the link in the Workflow Name column of the Workflows page. You can also click the workflow name in the navigation pane under Workflows for the screen you are modifying.
Development of Workflows in an Extension Library
You can develop and customize workflows not only in the Customization Project Editor but also in Visual Studio by using an extension library. To develop workflows, you should use Workflow API, which is a part of MYOB Acumatica Framework. For details, see Workflow API Guide.
Use of a Single Customization Project Vs. Multiple Projects
You should make all modifications to a form's workflow within a single customization project. This includes modifications to actions, fields, conditions, dialog boxes, and event handlers. If you have multiple customization projects that contain different workflow modifications for the same form, you need to specify the level for each of these projects before you publish them. The system will then apply the changes from the customization project with the highest level and will not apply the changes from other projects. For details about the levels of customization projects, see Project Publication: General Information.
If you want to have multiple customization projects that modify the workflow of the same form, you need to use Workflow API. If you want to apply the changes from different customization projects that modify the same form without Workflow API, you need to combine these changes in a single project. For details, see Workflow API Guide.