How to make a workflow progress differently for different staff members.
Suppose you have a stage in a workflow and you would like the next stage to be influenced by the staff member that is clicking the button.
For example, your job might be on a stage called 'Clear manager review points', where you currently have one progress button called 'Points cleared'. Currently, this may pass the job back to the manager so they can satisfy themselves that the points have been cleared. When experienced team members click the button, you would be happy for the job to go straight to the partner review without coming to the manager. The manager should continue to get the job back when less experienced team members clear the review points.
There are two ways of achieving this, described below:
Option 1: Have multiple progress buttons:
The obvious solution would be to have more than one progress button, and for the button's label to give a hint as to which one the user should press. (Guidance available here for adding buttons)
The different buttons can then behave differently, for example, they might:
- Progress to a different stage.
- Trigger different workflow actions, such as:
- Setting the next job holder to someone different.
- Setting a different target date.
- Sending different e-mails.
Following the example of the review points, we would have two buttons called 'Points cleared - pass back to manager' and 'Points cleared - pass straight to partner'.
These two buttons would pass the job to different positions (manager/partner), and would most probably also go to a different stage too.
The downside here is that the users need to know which one they should click, and there is a risk they could click the wrong one. The solution may be to look at option 2 below.
Option 2: Have multiple progress buttons - BUT - only 1 option visible to each team member:
This approach retains the multi-button flexibility of option 1, you can still have multiple buttons that do different things; crucially, in this option, a user will only see one option, the one that is appropriate to them.
To achieve this you should first place users into teams. You can read how to create new teams and populate them here.
Next, set each progress button so it is only visible to members of a certain team. If your buttons already exist, click on the pencil icon on the button (i.e. the grey rectangle on the visual editor), to edit them. Change the 'Visibility (by user)' setting so that only members of a specific team can see the button.
Of course, you would want to ensure that all users can see one button unless you want to prevent some users from being able to progress jobs at this stage.
Following our example again, we might have all our experienced team members in a team called 'Senior team' and our less experienced team members in a team called 'Junior team'. We would want to restrict the visibility of the button 'Points cleared - pass straight to partner' to the 'Senior team'. Similarly, we would want to restrict the visibility of the button 'Point cleared - pass back to manager' to the 'Junior team'