Propagate Custom Field to Linked Issues

What is it?

The problem you need to solve:

See Linked Issue be updated with Custom Field values of current Issue.

How Minyaa solves this problem:

Minyaa allows you to define a Workflow Function usable in any Transition and able to propagate values of Selected Custom Fields to Linked Issues (depending on the selected Link Types).

How it works

By defining this Workflow Function in a Transition of your workflow, you are able to force some custom fields of Linked Issues to be updated with custom field's value of current Issue.

By Linked Issues, in older release, the Workflow Function was assuming only Outward Links.

Now, the function supports Outward and Inwards Links.

This Workflow Function is also useable in the Global Edit Transition (See Issue Validation), and then be sure that the integrity of this rule is respected.

Note, that the Workflow Function CustomField Propagation to Sub Task is same as CustomField Propagation to linked Issues but restricted to Sub-Task links.

Configuring the Feature

To configure the Propagate Custom Field to Linked Issue Workflow Function, please follow these steps :

  1. Since this Workflow Function does not need to be associated with a screen containing the concerned CustomFields, the function can be added in any Workflow Transition.

    It might be:
    • A Common Transition,
    • Or a Global Transition,
    • Or the Edit Global Transition.
    If you choice the Common Transition and Global Transition, it will be preferable to removed concerned CustomFields from the Edit Screen of the Linked Issues.

    If you want keep them in your Edit Screen, you will have to define this Workflow Transition at the Edit Global Transition level, in order to be sure that the Issue Validation is performed for each Edit Operation, and then control the integrity of the rule.


  2. Add the Propagate Custom Field to Linked Issue Post-Function to the wanted transition.

    For more information on adding a Post Function in Workflow, please see JIRA: Adding a Post Function Adding a Inherit CustomFields Post-Function
  3. Its configuration allows you to specify which CustomFields have to be inerited from the current Issue to linked Issues (Inward or Outward Links), recursively or not. Inherit CustomFields Post-Function You have to select
    • The list of Custom Fields concerned by the propagation,
    • The list of Outward Links to follow for this propagation,
    • The list of Inward Links to follow for this propagation,
    • If the propagation has to be applied recursively.
    In case of Recursive Propagation, the Propagate Custom Field to Linked Issue Workflow Function will take care that :
    • The propagation is not done more than one time per Issue. The Recursivity skips to the next issue,
    • The Recursivity is stopped as soon as an Issue has been nodified by a same Link Type (Case of circuit!)
    Parameter Description
    Available Custom Fields List of all CustomField candidate for a propagation. Some of Custom Fields are filtered, like all Calculated Custom Fields.
    Selected Custom Fields List of all selected CustomFields for a propagation.
    Available Outward Link Types List of all Outward Link Types candidate for a propagation.
    Selected Outward Link Types List of all selected Outward Link Types for a propagation.
    Available Inward Link Types List of all Inward Link Types candidate for a propagation.
    Selected Inward Link Types List of all selected Inward Link Types for a propagation.
    Propagation applied recursively Has the propagation to be done recursively.


  4. You will end up with a transition looking like:

    Inherit CustomFields Post-Function

    And the XML Declaration as follow :

    <post-function>
    	<function type="class"> 
    		<arg name="class.name">com.atlassian.jira.workflow.function.PropagateFieldToLinkedIssues</arg> 
    		<arg name="linkTypesSelected">10000,</arg> 
            <arg name="inwardLinkTypesSelected">10000,</arg>
    		<arg name="recursive">true</arg> 
    		<arg name="customFieldsSelected">customfield_10020,customfield_10050,</arg> 
    	</function> 
    </post-function>