Propagate System and Custom Fields to Linked Issues

What is it?

The problem you need to solve:

See Linked Issue be updated with System and 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 System and 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 system and custom fields of Linked Issues to be updated with supported 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 System and Custom Fields Propagation to Sub Task is same as System and Custom Fields Propagation to linked Issues but restricted to Sub-Task links.

Since Minyas 2.5, you are able to select also System fields.

Note, that Unsupported Fields are not available for selection.

Configuring the Feature

To configure the Propagate System and Custom Fields 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 System and Custom Fields, 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 Fields 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 System and Custom Fields 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 Propagate System and Custom Fields Post-Function
  3. Its configuration allows you to specify which System and/or Custom Fields have to be inherited from the current Issue to linked Issues (Inward or Outward Links), recursively or not. Inherit Propagate System and Custom Fields to Linked Issue Post-Function You have to select
    • The list of System Fields concerned by the propagation,
    • 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 System and Custom Fields 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 System Fields List of all System Field candidate for a propagation. Some of System Fields are filtered (See Unsupported Fields)
    Selected System Fields List of all selected System Fields for a propagation.
    Available Custom Fields List of all Custom Field candidate for a propagation. Some of Custom Fields are filtered, like all Calculated Custom Fields.
    Selected Custom Fields List of all selected Custom Fields 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:

    Propagate System and Custom Fields Post-Function

    And the XML Declaration as follow :

    <post-functions>
    	<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="feldsSelected">,,</arg> 
    		<arg name="customFieldsSelected">customfield_10020,customfield_10050,</arg> 
    	</function> 
    </post-functions>
    

Unsupported Fields

This Workflow Post-Function will assumes as Unsupported Fields for selection the following list of field :
  • the Key fields:

    • the Project Key (com.atlassian.jira.issue.fields.ProjectSystemField)
    • the Issue Key (com.atlassian.jira.issue.fields.ProjectSystemField)


  • The field managed by Schemes:

    • the Issue Type (com.atlassian.jira.issue.fields.KeySystemField)
    • the Issue Status (com.atlassian.jira.issue.fields.StatusSystemField)


  • the calculated fields:

    • Fields marked as unavailable by FieldManager (TimeTracking, Agregate Time Tracking)
    • Work Ratio field
    • any Calculated Custom Field (com.atlassian.jira.issue.customfields.impl.CalculatedCFType)
    • any Minyaa Abstract Custom Fields (com.atlassian.jira.issue.customfields.impl.AbstractLinkedFieldType)


  • Some other fields for which has no sense to propagate:

    • Created Date (com.atlassian.jira.issue.fields.CreatedSystemField)
    • Attachments (com.atlassian.jira.issue.fields.ThumbnailSystemField)
    • Thumbnails (com.atlassian.jira.issue.fields.AttachmentSystemField)
    • Sub Task Link (com.atlassian.jira.issue.fields.SubTaskSystemField)
    • Issue Link (com.atlassian.jira.issue.fields.IssueLinksSystemField)
    • Vote Counter (com.atlassian.jira.issue.fields.VotesSystemField)
    • Comments (com.atlassian.jira.issue.fields.CommentSystemField)
Not that most of SystemField are unsupported, because most of them have non sense to be propagated.

For the moment, there is no reason to integrate them ... perhaps later !