Establishing workflow for order process - An exercise The gadget spec URL could not be found
We have already completed the who? what? when? analysis for the order process (Click here to read).
Workflow activity
|
Activity owners |
UI Design Requirements |
Actions allowed
|
User IDs/User Groups
|
Create orders |
Sales Team
|
Default Order Form
|
Create order
|
Sales Team
|
Customer review |
Customers
|
Default Order Form
|
Confirm order, Cancel order
|
Customer's email
|
Product team review |
Product Team
|
Default Order Form
|
Review order
|
Product Team
|
Customer relations review
|
Customer Relations Team
|
Default Order Form
|
Close order
|
Customer Relations
|
Closed orders
|
Customer Relations Team
|
Default Order Form
|
-
|
Customer Relations
|
We have the necessary details for creating the workflow. So let's get started with implementing the workflow for order process in the process design.
The first step in our order process is order creation. Orders are created by any member of the sales team. The newly created orders are marked as open orders.
Activity Name |
: Create Orders |
Activity Owner |
: Sales Team |
Form |
: Default order form |
Queue |
: Default queue |
Next activity |
: Waiting for customer review |
Next activity trigger |
: "Create Order" button |
|
|
Configuring create order workflow activity |
|
|
|
Select the "Start" workflow activity. |
|
|
|
Rename this workflow activity as "Create Order" by updating the value in the Namebox. |
|
|
 |
Only the sales team must be able to create product orders.
Click on the role icon and enter the sales team role name in the formula bar. |
|
|
|
If required, select the queue and form that must be used for accessing the order instances in the "Create Order" workflow activity.
|
|
The next step in our order process is the customer review. Order created by the sales team is reviewed by the customer who placed the order. The customers can either confirm the order using the "Confirm Order" button or cancel the order using the "Cancel Order" button. The orders reviewed by the customer will be marked as either "Confirmed" or "Cancelled" based on user action.
Activity Name |
: Waiting for customer review |
Activity Owner |
: Customer |
Form |
: Default order form |
Queue |
: Default queue |
Next activity |
: Conditional IF, branching to either Product Team Review or Customer Relations Review |
Next activity trigger |
: "Confirm Order" or "Cancel Order" button |
|
|
Create a new public cell "CustomerEmail".
Select the "CustomerEmail" public cell. Enter the following rule in the cell.
=CustomerRef.Email |
|
|
|
The namebox shows the name of the public cell as "CustomerEmail". The formula bar shows the corresponding rule.
The customer model reference has been used to fetch the customer's email..
|
|
|
|
Create a new public cell "Customer".
Select the "Customer" public cell. Enter the following rule in the cell.
=DSEARCH(User.UserId=CustomerEmail) |
|
|
|
The namebox shows the name of the public cell as "Customer". The formula bar shows the corresponding rule.
The DSEARCH function has been used to determine the SheetId of the user instance corresponding to the logged in customer.
|
|
|
|
Configuring customer review workflow activity |
|
|
|
Insert a new workflow activity. |
|
|
|
Rename this workflow activity as "Waiting for customer review" by updating the value in the Namebox. |
|
|
 |
The order must be accessible only to the customer who placed the order.
Click on the user icon and enter "=Customer" in the formula bar.
This is an example of dynamic user configuration for an activity.
|
|
|
|
If required, select the queue and form that must be used for accessing the order instances in the "Waiting for customer review" workflow activity.
|
|
The customers can either cancel or confirm their order. Depending on the action performed by the customer, the orders have to be moved to their respective workflow activity.
Activity Name |
: Check Customer Action
|
Activity Owner |
: n/a
|
Form |
: n/a
|
Queue |
: n/a |
Next activity |
: Waiting for product team review or Waiting for customer relations review
|
Next activity trigger |
: User action in customer review workflow activity |
|
|
Configuring IF conditional process
|
|
|
|
Insert a IF conditional branching activity.
Click on the "+" button to view its branches.
|
|
|
|
|
Click on the node selector for the "ApproveBranch". |
|
|
 |
Rename this branch as "Confirm" by updating the value in the Namebox.
|
|
|
|
|
|
|
|
Click on the node selector for the "RejectBranch". |
|
|
|
Rename this branch as "Cancel" by updating the value in the Namebox. |
|
|
|
|
|
|
|
Select the IF conditional branching activity.
|
|
|
|
Rename this activity as "Check Customer Action" by updating the value in the Namebox. |
|
|
|
|
Enter the following condition in the formula bar.
=Caption |
|
|
|
The above rule checks the caption of the button that was actioned by the user and branches to the respective branch. |
|
|
|
Alternatively, if a condition is to be validated, an IF condition can be configured. The IF condition requires three parameters:
- Condition
- Name of the branch that must be executed when true
- Name of the branch that must be executed when false
|
|
The next step in our order process is the product team review. Orders confirmed by the customers are reviewed by the product team. |
Activity Name | : Waiting for product team review | Activity Owner | : Product Team | Form | : Default order form | Queue | : Default queue | Next activity | : Customer relations team review | Next activity trigger | : "Review Order" button
|
|
|
Configuring product team review workflow activity |
|
|
|
Select the workflow activity in the confirm branch. |
|
|
|
Rename this workflow activity as "Waiting for product team review" by updating the value in the Namebox. |
|
|
 |
Only the product team must be able to review orders.
Click on the role icon and enter the product team role name in the formula bar. |
|
|
|
If required, select the queue and form that must be used for accessing the order instances in the "Waiting for product team review" workflow activity.
|
|
|
 |
Select the workflow activity in the cancel branch. If an order is cancelled by the customer, then that order must be directly sent for customer relations review. Also, all the orders reviewed by the product team must be reviewed by the customer relations team. Hence, the customer relations team review workflow activity must be inserted outside the IF branches. |
|
|
|
Click on the delete activity to remove the workflow activity in the cancel branch.
|
|
The last step in our order process is the customer relations team review. Orders reviewed by the product team are closed by the customer relations team. |
Activity Name | : Waiting for customer relations team review | Activity Owner | : Customer Relations Team | Form | : Default order form | Queue | : Default queue | Next activity | : Closed Orders | Next activity trigger | : "Close Order" button
|
|
|
Configuring customer relations team review workflow activity |
|
|
|
Insert a new workflow activity as shown in the screen capture. |
|
|
|
Rename this workflow activity as "Waiting for customer relations team review" by updating the value in the Namebox. |
|
|
 |
Only the customer relations team must be able to close orders.
Click on the role icon and enter the customer relations team role name in the formula bar. |
|
|
|
If required, select the queue and form that must be used for accessing the order instances in the "Waiting for customer relations team review" workflow activity.
|
|
The closed orders can be viewed by the customer relations team anytime. |
Activity Name | : Closed Orders | Activity Owner | : Customer Relations Team | Form | : Default order form | Queue | : Default queue | Next activity | : - | Next activity trigger | : - |
|
|
Configuring closed orders workflow activity |
|
|
|
Insert a new workflow activity as shown in the screen capture. |
|
|
|
Rename this workflow activity as "Closed Orders" by updating the value in the Namebox. |
|
|
 |
Only the customer relations team must be able to view closed orders.
Click on the role icon and enter the customer relations team role name in the formula bar. |
|
|
|
If required, select the queue and form that must be used for accessing the order instances in the "Closed Orders" workflow activity.
|
|
What's next?
Congratulations! You've implemented the workflow for order process. You should be familiar with inserting a workflow activity, using an IF conditional branching activity and Goto branching activity. In the next section, we will learn to create actions.
|