The 'Update any Issue Field' post-function updates any field to a specified value, after a transition has been completed. This can be a system- or a custom field.
The field can be on the issue in transition(within same issue) or on a related issue, like a sub-task, a linked issue or an issue within an Epic (during the transition on the Epic).
In addition to setting values to fields, the 'Update any Issue Field' post-function can also add comments.
You must specify the field and the desired value. For example:
There are several ways in which preconditions can be evaluated in the context of a post function:
- True (Precondition must be true to execute a post function)
- False (Precondition must be false to execute a post function)
You can find more generic description of precondition here
Update field on all issues related as
Several of JSU's workflow modules provide the option the define the scope of the module on some related issues.
For example instead of copying a field within an issue during a post function, you might choose to copy it to a sub-task.
Types of Issue Relations
Related issue will be found by one of the following Jira concepts:
- Issue Link
You can define the link type to define which issues exactly will be affected by the operation.
If link type is ANY, the operation will be performed on any linked issues.
- Parent / Sub-Task
The related issue is either parent or sub-task of each other.
- Epic / Issue in Epic
This is only applicable, if you have Jira Software installed.
The other issue is either the epic related by an epic link, or it is part of an epic.
A JQL query will be executed to find the issues, which will be affected by the post function. You can use some placeholders in the JQL query, which will be replaced with current field values of the issue in transition. For writing the JQL query please follow the instructions on JQL Reference .
Also see our JQL Use Cases for some examples.
Issue in Transition
We use the term 'Issue in Transition' when we refer to the issue for which a workflow condition is checked, for which a workflow validator is examined, or for which a workflow post function is performed.
Or in other words that issue, which triggered a workflow condition / validator / post function to be executed.
Source and Destination
For example the Copy Value From Other Field Post-Function allows you to define the issue in transition as the source or destination of the copy operations, while you define the other end with an issue relation.
The field value will then be read from the source issue and be written to the destination issue.
Other workflow modules do not have source and destination. So you just define the issue relation, which will apply for that workflow module.
For example Create a Linked Issue Post-Function will just create a new issue and then connect it with some Issue Relation to the issue in transition.
Please use some common sense what can and what cannot work.
- Copy Value From Other Field Post-Function there should be only 1 source issue. Otherwise it is not clear from which the value will be read. (The current implementation will just pick one of them and ignore the rest. Which one is not defined - sort of random.)
- If you use Create a Linked Issue Post-Function to create a new sub-task, you must also configure this post function to create the new issue as an issue type of a sub-task and make sure the target project is the same as the one of the issue in transition.
We try to perform whatever is possible. In case of problems, the workflow module will still run through, but write a message into the log file. See Troubleshooting how to turn on the full logging for JSU. It might be a good idea to do this while you test any new workflow configuration to make sure you're not missing any thing.
Perform As User
If you don't specify anything here, the transition on the related will be performed with 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 who has been granted the necessary permissions. Usually this user account is assumed to be only technical (impersonation), with broad permissions, and not used to log into Jira by any coworkers.
Select the field you want to update.
As destination you also have special options:
- *** new comment ***
A new comment will be created with the entered value.
Please make sure that the value you enter is valid for the datatype of the selected field. Also verify, that the context configuration for the project using this workflow will allow to modify the selected field.
Typically you will use text or numbers as value. User fields should be set to the account ID.
There is a fundamental difference between Jira Server/Data Center and Jira Cloud: In Jira Cloud post functions of apps are executed asynchronous as a 'background job'.
- This means a post function will be executed after the transition has completed on Jira Cloud.
- There is no guaranteed order in which several post functions are performed. They might be executed in a different order from the one you had set them up in Jira's workflow configuration. So you cannot rely on any result of a 'previous' post function. The order by which the post functions are executed might be different every time the transition is performed.
- When a post function has a problem (due to misconfiguration or the current data of a Jira issue), the transition (and all other post functions) will be performed nevertheless.
- The result of a post function might not be visible immediately in the browser.
- There are no error messages displayed to the user.
See the above example of a Story changing the Epic Status of its Epic.
Or whenever a parent issue is set to 'In Progress' the assignee of all its sub-tasks could be set to the current user (the one changing the status on the parent).
A developer has fixed a Bug. He proceeds in the Jira workflow to the status 'Resolved' (this might be triggered from his code pushed to Bitbucket). The 'Update any Issue Field' now adds a label 'testing-required'.
This would be a very light weight solution. There are also cases when you need a more complex solution. Have a look at Testing and Fixing Bugs.
For more information on how to configure a post-function in Jira, see the Jira documentation.
Supported Field Types
In its different modules (especially those for workflows), the JSU app supports many different field types. System fields, as well as custom fields.
However you should be aware, that not all field types or all combinations are supported. We think we cover the most important field types and are still continuously adding and improving which, and how different field types are supported. But the one you need might not work (yet).
We recommend that you test JSU with fields to see if it is compatible with your system. Our evaluation license gives you 30 days free trial.