This is the documentation of JSU for Jira Server/Data Center. If you are using JSU on Jira Cloud, see our JSU Cloud documentation.
Description
The 'Follow Up Transition' post function evaluates the workflow conditions of all the next transitions on the target status of the current transition. If exactly one condition is valid, that transition will be triggered as a 'follow up'.
Consider the following workflow:
Our issue has a mandatory number custom field.
At the end of the 'Go' transition, we have configured to 'Follow Up Transition' Post Function.
Each transition leading away from the status 'Junction' have workflow condition:
'Under Five' has the condition: Number field < 5?
'Exactly Five' has the condition: Number field == 5?
'Over Five' has the condition: Number field > 5?
When the user performs the 'Go' transition, this will always trigger a follow-up transition.
For example, if the user enters Number=3 during the 'Go' transition, he will end up at the status 'In Progress'. If he enters 42, this will lead him to 'Closed'.
In this example, we have been careful to configure our workflow conditions so that always only and exactly 1 condition can be true. Like this, the user will never get 'stuck' at the 'Junction' state. Instead the 'Follow Up Transition' will lead him to the correct end state.
Since any workflow condition can be used for follow-ups, this provides great flexibility.
Configuration
You must specify the field and the desired value. For example:
Perform As User
When choosing a user account to run a post function, the account specified must have the appropriate permissions to perform the actions of the post function, for example, creating an issue or adding a comment. You can specify a different user account that owns the necessary permissions that acts only as a technical (impersonation), with broad permissions, but not used to log in to a Jira account as an individual.
If you don't specify a user here, the transition on the related issue is performed as the same user who triggered this post function on the origin issue by default. Therefore that user must have the necessary permissions on the related issue. In some setups, that user might not have the required permissions on the related issue or even access to the project of the related issue.
In combination with the User is in Any Users condition, you can hide a transition from all users other than the 'Perform As User' user.
Position of the post function
There is not much to configure for the 'Follow Up Transition' post function. It does not have any parameters. Just ensure that it is the very last post function that will be performed, otherwise you will run into some problems.
You can see here the 'Follow Up Transition' Post Function configured as the last post function.
The transition triggered by the Follow Up Transition cannot have any transition screen. (It is not shown to the user respectively.) In the example above this means the 'Under Five', 'Exactly Five' and 'Over Five' transitions cannot have any transition screen.
The 'Follow Up Transition' Post Function cannot be used in the Create transition (the one which is performed, when a user creates a new issue).
Conditions
However to complete your setup, you have to configure at least one workflow conditions. Let's continue the example from above, where a number field is evaluated. We will configure even 3 conditions - one for each outgoing transition from the 'Junction' status.
Under Five
Here we are using the Value Field Condition from the JSU app. The details of its configuration looks as follows:
Exactly Five
Over Five
Examples
Here are some more ideas, on how you might use the 'Follow Up Transition' Post Function.
Yes / No
A simpler more common case is, that you have only 2 transitions leading away and you evaluate basically the same condition, but at one condition negated.
a == b?
a != b?
Again you can use the Value Field Condition from the JSU app for this setup.
Check it: 'Follow Up Transition' Post Function
Yes: Condition a == b?
No: Condition a != b?
Fast Forward
Some extra step in your workflow might be only necessary if some condition is not fulfilled. Otherwise that step could be skipped.
Start: 'Follow Up Transition' Post Function
Start Progress: Condition which must be fulfilled to skip the 'Extra Step'.
So in this case you do not have a 'Junction' state, but instead, intend that the user can get 'stuck' at the extra step until the condition is fulfilled.
Management Approval
See the Conditional Approval use case for another real-life example.
Troubleshooting
My workflow gets stuck in the Junction status
Not exactly one condition
Usually, the problem can be tracked down by manually walking through what the post function would do:
If exactly one condition is valid
that transition will be triggered
It's important that you do your analysis with the same user that got stuck in the Junction status. There might be issues with permissions, that could lead to a different result, depending on the user performing the transition.
If you now look at such an issue: How many transition buttons does it have? Only if there is exactly one transition button, 'Follow up' will be triggered. If you have none or more than one transition button, you must review your workflow conditions on the transitions leading out from the Junction status. If there is only one button, there might be something wrong with that following transition. For example, a validator could prevent the transition from getting completed. Try (with the same user, who got stuck in Junction) to click that button to see what happens.
Triggered transition fails
Another reason might be that the triggered transition does not run through. For example, if it has a validator configured, which fails.