Note | ||||||
---|---|---|---|---|---|---|
Documentation for
|
Excerpt |
---|
A workflow post-function |
that sets the value |
of a |
field to the value |
of a field in related issues (such as linked issues, Stories of an Epic, Epic of a Story, subtasks of an issue, issues returned by a Groovy script or a JQL search, etc.) |
Note |
---|
|
To add the 'Copy field value from
related issues' post-function to a transition:
- Click
Edit
for the workflow that has the transition you wish to configure the post-function on.- In the Workflow Designer, select the transition.
- Click on
Post Functions
in the properties panel. - Click on
Add
post function
. - Select
Copy field value from
related issues
from the list of post-functions.- Click on
Add
to add the post-function on the transition.
- Select the field from the source field from the
Source Field
drop-down. - Select the field
- from the destination field from the
Destination Field
drop-down. Select "Same as Source field
" to copy it to the same field. - Select the
- issues to operate on from
Issue Link
drop-down, or leave it as Any
for any link type other than Issue/Subtask, Epic/Story and Jira Portfolio hierarchy-
Source issue(s)
field - Select the options provided to add the required parameters.
- Click on
Add
to add the post-function to the transition.
When you add this post-function to a transition and trigger the transition, the add-on sets the value of the "Destination field" on the current issue to the value of the "Source field" in the related issues.
Panel |
---|
Related links : |
Refer to the Use cases for post-functions page for use cases for this post-function.
When you add this post-function to a transition and trigger the transition, the add-on sets the value(s) of a selected field to the value(s) from the same field of an issue linked to the current issue through the selected link typeSource issue(s)
Select the issues to copy from. They can be:
Linked issues: Select issue(s) linked to the current issue through any link type or a specific link type such as
blocks
,is cloned by
, etc.Sub-tasks of the current issue: Select this option to operate on the sub-tasks of the current issue
Parent issue of the current sub-task: Select this option to operate on the parent of the current issue
Issues that belong to the current Epic: Select this option to operate on the issues that belong to the current Epic
Epic of the current issue: Select this option to operate on the Epic of the current issue
Child issues of the current issue in the Portfolio hierarchy: Select this option to operate on the child issues of the current issue in the Portfolio hierarchy
Parent issue of the current issue in the Portfolio hierarchy: Select this option to operate on the parent issue of the current issue in the Portfolio hierarchy
Issues returned by a Groovy script: Input a Groovy script that returns either a single Issue object, or a Collection of Issue objects, or a String representing the key of an issue, or a Collection of Strings each representing an issue key. For example:
"TEST-1"
["TEST-1","TEST-2"]
ComponentAccessor.issueManager.getIssueObject("TEST-1")
[ComponentAccessor.issueManager.getIssueObject("TEST-1"),ComponentAccessor.issueManager.getIssueObject("TEST-2")]
issue.parentObject
issue.getLinkedIssues()
Issues returned by a JQL search: Input a JQL search expression, including an optional Groovy Template markup. For example:
project = TEST
returns issues of the project with the key TESTproject = ${issue.get("project").key} and assignee = ${currentUser.name}
returns issues of the project the current issue belongs to and assigned to the current user.To operate on issues of a project with key
TEST
and issue type name same as the value in a text fieldCode Block <% if (issue.get("Single line text")) { %> project = TEST and issuetype = ${issue.get("Single line text")} <% } else { %> issuekey=INVALID-1 <% } %>
Note |
---|
|
Options
- Copy only if not set
Sets the value(s) of the selected field of the current issue, only when the field is empty on the current issue.
- Ignore empty values
Will not set (clear) the selected field of the current issue, if the value from the linked related issues is empty or null.
- Add source value(s) to destination field
Appends value(s) from the same field of each linked related issue to the selected field of the current issue. This is applicable only to multi-valued fields.
- Create missing value(s)
Allows automatically creating any missing value(s) while copying values that do not exist in the destination issue's project and hence should be created from the source issue's project. This is applicable only to Affects Version/s, Fix Version/s, Single version and Multi-version picker type custom fields, Components, Radio buttons, Checkboxes, Single select and Multi-select list type custom fields.
Conditional execution
To execute this post-function based on the result of a groovy expression see Conditional execution/validation using a Groovy expression.
Note that you can use this function to copy a field from
The parent issue of a sub-task by using the built-in is Parent oflink type and vice versa using theis subtask of
link typeThe Epic of an issue by using the built-in is Epic of link type and vice-versa using the has Epic of
link typeInput a Groovy expression that returns true
if the post-function should run. For more information see Conditional execution using Groovy expression. Note that the condition will be evaluated once per applicable related issue, with each related issue being available, in turn, in the relatedIssue
and deprecated linkedIssue
variables.
Error Handling
By default, all errors (Java Exceptions) raised by this post-function, including those raised by custom Groovy scripts, will be logged in the JIRA log file but will not be reported to the user and will not prevent the transition from completing. However, when designing new workflows or troubleshooting them, it is more convenient to be notified immediately of any such error during the execution of the transition. For example on the production Jira instances you might want to show errors only for the post-function(s) being worked on, in order to avoid disrupting other workflows. To make errors raised by the current post-function prevent the transition from completing and show the error in the browser, select Make transition fail when an error occurs in this post-function
.
If you want to show all the errors, either only to the admins or to all users, configure the option globally on the JMWE configuration page. For example, on development and staging Jira instances, you can activate error reporting for all JMWE post-functions, to display all the errors and it is recommended to do so, and on production Jira instances you might want to activate error reporting only to administrators so that they can be made aware of configuration errors.
Note |
---|
When the option is selected on a post-function, it overrides the configuration on the JMWE configuration page. |