Workflow Scenarios :-
Service Request Onboarding Workflow :-
HR team would like to create a workflow for user On-boarding request. Their workflow requirement is listed below,
When a user on-boarding request is raised, check if the Employee Type field is filled.
If the Employee Type field is not filled, send periodic reminders until the field is updated. If not updated for a certain period of time, automatically change the status to "Waiting for End User" and wait for the field to be updated.
Once the Employee Type field is updated, based on its value, trigger the necessary approval and specific tasks
If the approval is rejected, update the status to "Rejected" and close the request.If the approval is accepted and all tasks are completed, close the request.
Here is the complete look of the workflow which is about to be configured,
Custom Field and Status Setup
Create a Custom Field:
Navigate to Set up → Customization → Additional Fields.
Add a new field called "Employee Type" as a pick list field with the values "Permanent" and "Contract".
Add Custom Status:
Add custom status fields such as "On-boarding Tasks in Progress" and "New Employee On-boarded". Other statuses will be available by default.
Steps to configure the On-boarding workflow :-
1. Navigate to Set up → Automation → Workflows. Click on the dropdown to select Service Request and click on New Workflow.
Add the "Status" node as "Open" and connect with start.
3. Add the "IF" node and select the condition "Employee Type" as "Is empty".
4. The "IF" node will have two outputs: "Yes" or "No". If the field is empty ("Yes"), connect the next node "Status - Waiting for End user" and then follow with Timer node as shown below,
5. If the Employee Type field is not updated by the end of the timer, which is 1 day. Add the "Wait For" node with the criteria Employee Type "is not empty" as shown below.
6. If the Employee Type field is updated, the timer will abort and move to the next node "Switch". Add the switch node with the options "Permanent/Contract" as shown below.
7. Based on the selected value in Employee Type, configure the workflow as follows:
For "Permanent", add the Approval node as shown below.
8. If the approval is "Approved", add a Field Update node to change the approval status and move the status to "On-boarding Task - In progress" by adding the status node as shown below.
9. From the status node "On-boarding Tasks - In Progress", split the workflow to handle multiple tasks for each group and join all operations together.
10. To split the workflow for multiple operations, add the Branch nodes called "Split" as shown below.
11. From the Split, add three task nodes for IT, Legal, and Facilities. Configure the respective groups and select "Wait for task completion".
12. In addition to task nodes, use the "Resource" node with switch criteria as shown below and connect it with the Split node as shown in the above screenshot. If the resource is selected as "Yes", add another task node to verify the agency-related documents.
13. Connect all these tasks together using the "Join" node. Ensure the join node is edited to "All forked paths are completed".
14. Add the "Notification" node to send a final notification to the hiring team and connect it with the Join node.
15. After the final notification, add the Status node and connect it to "New Employee On-boarded".
16. Handle the rejection process by adding the Field Update node, connecting it with the rejected status, and then connecting it with the Status node "Rejected" as shown below.
17. Returning to Step 7, if the Employee Type field is "Contract", add a task node and connect it as shown below. Set the task to "Wait for task completion".
18.Finally, connect this task with the status node "New Employee On-boarded" and the End node.
Manage Status :-
You can configure to show only the status configured within the workflow as shown below,
Below are the Nodes that were used in the above workflow,
Flow Node → Status
Condition Node → IF, SWITCH, WAIT FOR, RESOURCE.
Action Node → Timer, Approval, Notification, Task, Field Update
Branch Node → Fork and Join.