Applies to version: 2020.1.x; author: Marcin Wiktor
This article presents how we can facilitate the maintenance of the application that we use across many business entities and have different people responsible for specific tasks (e.g., accounting).
Business case
We implement an application for the assignment of cost invoices. Our company has two departments (similarly, the mechanism can also be used in the case of companies) – in Cracow and Warsaw. In each of these departments, there are people working in accounting who are responsible for processing company invoices.
In the next step, we prepare the appropriate action templates that will allow us to assign tasks to the BPS Secretariat and Accounting groups. In this case, the BPS groups will be used, but you also can use AD or SharePoint groups.
Configuration
The first step is to configure the “Department” choice field. It’s best if the ID should reflect the department name (e.g., acronym) if possible because this will make the work easier for us later.
The next step is to create “Accounting” and “FrontOffice” groups for each department according to the following scheme: INV_FrontOffice_[department ID] and INV_Accounting_[department ID].
Let’s go to the workflow configuration – we want the task in the “Invoice description (FrontOffice”) step to be assigned to one of two groups depending on the selected department.
The above configuration will work as intended, but it may provide us with several problems. This mechanism is quite complicated and difficult to maintain. If we want to make any changes, it will be necessary to update the workflow. For example, if you want to add a reverse path to the Front office, adding extra steps will be necessary to assign a task to the appropriate group.
For the sake of simplicity, we can use the “Create a task” action.
By dynamically setting the group name based on the form field, there is no need to create a separate action for each variant.
Let’s try to register one invoice for Cracow and Warsaw. In the instance history, we can see to whom the tasks were assigned – different persons were assigned to each department.
We can do the same for the “Accounting” department.