Our new Appfire Documentation Space is now live!

Take a look here! If you have any questions please email support@appfire.com

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 38 Next »

JSU for Jira Server/Data Center

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

Description

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.


(info) 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.


Configuration

You must specify the field and the desired value. For example:

Perform As User

With Perform As User, you can specify a different user account that owns the necessary permissions. Usually, this user account is assumed to be only technical (impersonation), with broad permissions, but not used to log into a Jira account as a person. 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 restrictive setups, that user might not have the permissions on the related issue or even might not have 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 other users than the 'Perform As User' user. 

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.

(info)  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.

(warning) 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, 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 Use Case /wiki/spaces/JSU/pages/25680438 for another real life example.

Trouble shooting

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

(info) 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.


  • No labels