This is the documentation of JSU for Jira Server/Data Center. If you are using JSU on Jira Cloud, you can find the documentation here.
The 'Follow Up Transition' is available from JSU 2.0
The 'Follow Up Transition' Post Function will evaluate 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.
Tip: Since any workflow condition can be used for the follow ups, this provides you great flexibility. The JSU app has some quite useful additional Follow Up Transition . But you might also use some of another third party app.
You must specify the field and the desired value. For example:
Perform As User
If you don't specify anything here, the transition on the related will be performed under the same user, who triggered this post function on the origin issue. Thus that user must have the necessary permissions on the related issue.
However, in some restrictive setup that user might not be allowed to do so on the related issue. He might not even see the project of the related issue!
With 'Perform As User' you can specify a different user account which owns the necessary permissions. Usually this user account is assumed to be only technical (impersonation), with broad permissions, but not used to log into Jira by in life persons.
In combination with the 'User is in Any Users' Condition, you can hide a transition from all other users than the 'Perform As User' user. For further example go here.
Position of the Post Function
There is actually not much to configure for the 'Follow Up Transition' Post Function. It does not have any parameters. Just make sure 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).
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.
Here we are using the Value Field Condition from the JSU app . The details of its configuration looks as follows:
Here are some more ideas, 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.
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?
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.
See the Use Case /wiki/spaces/JSU/pages/25680438 for another real life example.
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 follow up 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, which got stuck in the Junction status: 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 have to review your workflow conditions on the transitions leading out from the Junction status.
If there is only 1 button, there might be something wrong with that following transition. For example a validator could prevent the transition to get 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 transition which is triggered does not run through. For example if it has a validator configured, which fails.