Our new Appfire Documentation Space is now live!

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

Transition Callers custom field type

A Transition Callers custom field type returns the users who triggered a particular transition on the issue and is displayed as a comma-separated list of the display names of the user. It is a read-only field.

Adding a Transition Callers custom field type

To add a Transition Callers custom field type to your instance:

  1. Log in to JIRA as an administrator.
  2. Go to the Administration icon  and click on it.
  3. Click on Issues - > Custom fields.
  4. Click on Add custom field.
  5. Click on Advanced in the left panel.
  6. Locate Transition Callers Field and select it.
  7. Click on Next.
  8. Provide a name for the custom field.
  9. You can optionally provide a description for the custom field.
  10. Click on Create.
  11. Associate the custom field to the appropriate screens.
  12. Locate the custom field in the Custom fields administration page and click on the cog wheel.
  13. Click on Configure and specify the transition(s) and the execution of the transition to look for (explained below).
  14. You can create multiple contexts if you need to associate different transitions to look for with particular projects or issue types.
  15. Perform a re-index as prompted by JIRA.

Specifying the transition(s) to look for

To specify the transition(s) to look for:

  1. Locate the custom field on the Custom Fields administration page.
  2. Click on the cogwheel and click on Configure
  3. Click on Edit Transition(s) to look for.
  4. Configure Transitions
    1. Specify transition names or IDsYou can either manually provide the name or id of the transition or use the Transition picker, and optionally specifying the workflow name.

      By specifying the workflow name you can use the same calculated field to capture the callers of different transitions with the same meaning across different workflows. For example: Imagine you want to capture the callers who triggers the transitions that lead to Resolved status. You have two workflows A and B, with transitions 21 and 51 respectively that lead to the "Resolved" status. You can add the two transitions of two different workflows to the configuration as shown below.

      This is the preferred mode, as it allows differentiating between multiple transitions between the same two Statuses, and it also supports "auto-transitions" (that do not change the issue Status). However, it will not work reliably for "old" transitions that took place before major workflow changes or switching the issue to a new workflow entirely.

    2. Specify from and to Statuses: You can specify the transitions by their From and To statuses.

      While this option doesn't allow differentiating between multiple transitions that move the issue between the same from and to statuses, and it doesn't work for "auto-transitions" (that do not change the issue Status), it will work reliably even for issues that changed workflows since the transition took place. 

  5. Click on Add.
  6. Click on Save.

To remove the transition(s) to look for a Transition Callers custom field type:

  1. Locate the custom field on the Custom Fields administration page.
  2. Click on the cogwheel and click on Configure
  3. Click on Edit Transition(s) to look for.
  4. Click on Remove for the transition you wish to remove.
  5. Click on Save.

Transition picker

To pick a transition using the Transition picker:

  • Click on Transition picker in the Configure Transitions screen.
  • Choose a workflow from Workflow name
  • Select a transition from the list of transitions displayed
  • Finally, click on either
    • Use Transition Name - recommended if you want the post-function to search for the transition to trigger by name, which is useful when targeting multiple workflows.
    • Use Transition ID - if you want to differentiate between transitions that bear the same name.

Search template

When creating a Transition Callers custom field type, you can configure the Search template as User Picker & Group searcher to be able to search issues for a user in that custom field. If you select None for the searcher, then you won’t see any reference to this field in the Issue Navigator search fields. Note that changing a custom field searcher requires a re-index.

Customizing the display of the of the Transition Callers custom field value on the issue detail view

You can define a velocity template that will return the Html representation of the calculated custom field. Leave it empty to use the default template. 

To select a format for a Transition Callers custom field type value:

  1. Locate the custom field on the Custom Fields administration page.
  2. Click on the cogwheel and click on Configure
  3. Click on Edit Velocity Template.
  4. Input the template.
  5. Click on Save.

You can use the following Velocity variables in the template:

  • $value: the raw field value, a collection of ApplicationUser objects.
  • $formattedValue: a String representing the comma-separated display names of the users
  • and other variables described on this page

For example:

#if ($value.isActive())
<font color="green">
   $formattedValue
</font>
#else
<font color="red">
   $formattedValue
</font>
#end

displays the display names of the users if the user is active and (question) if the user is inactive.

Customizing the display of the of the Transition Callers custom field value on the search list view

You can define a velocity template that will return the Html representation of the calculated custom field on the search list view. Leave it empty to use the default template. 

To select a format for a Transition Callers custom field type value:

  1. Locate the custom field on the Custom Fields administration page.
  2. Click on the cogwheel and click on Configure
  3. Click on Edit List View Velocity Template.
  4. Input the template.
  5. Click on Save.

You can use the following Velocity variables in the template:

  • $value: the raw field value, a collection of ApplicationUser object.
  • $formattedValue: a String representing comma-separated display names of the users
  • and other variables described on this page

For example:

#if ($value.isActive())
<font color="green">
   $formattedValue
</font>
#else
<font color="red">
   $formattedValue
</font>
#end

displays the display names of the users if the user is active and (question) if the user is inactive.

Displaying the Transition callers custom field type on Transition and Edit screen

The Never show on Transition and Edit screens option controls whether the Transition caller custom field can appear on transition and edit screens. If you select this option, the field will not be visible on any Edit or Transition screen, even if it is added to the screen.

Accessing the Transition callers custom field type from other Groovy scripts

You can access this field using any of the following getters of the Issue interface