Report based on inherited attribute across hierarchy

Hi there,

I am trying to create a report based on the following JIRA structure:

  • Demand
    • Epic
      • User Story
        • Sub-Task

We are using Portfolio Plugin, so I can already use the hierarchy from Demand to Epic to Story. Now our “Demand” in JIRA have a custom attribute “Budget” for the budgeting (I tried both Text field as well as a custom Labels field). I try to create a report which shows the Story Points of all User Stories per Budget, which should be possible via the hierarchy. But of course the “Budget” field is not available on the Epics and User Stories.
I imported the “Budget” field as Dimension already (works fine for Demands), but inheriting that attribute to Epics and User Stories did not work, I tried all the scripted attributes I found here in the community, they did not work.

Any ideas here?

Best regards,
Mirko

In eazyBI, you can import an issue linked field dimensions for issues in Sub-task, Epic, and Portfolio hierarchies. This option works for standard dimensions, like Label, Priority, Fix version, and other: https://docs.eazybi.com/eazybijira/data-import/advanced-data-import-options/issue-link-field-dimensions.

You can also create a similar dimension on another issue field from the Portfolio hierarchy as long as it is a single-select custom field. In that case, you may define a new JavaScript calculated custom field that would return custom field value and pass it down to child issues.
The structure for JavaScript calculated custom field “Demand Bundle” might look like this, where NNNNN is custom field “Bundle” ID in Jira:

[jira.customfield_NNNNN_jpoh3]
name = "Demand Bundle"
data_type = "string"
dimension = true
update_from_issue_key = "jpoh_parent_3"
javascript_code = '''
if(issue.fields.customfield_NNNNN && issue.fields.customfield_NNNNN.value) {
   issue.fields.customfield_NNNNN_jpoh3 = issue.fields.customfield_NNNNN.value;
}
'''

Before applying this code, please see how to test the JavaScript beforehand and how to create a JavaScitp calculated custom fields: https://docs.eazybi.com/eazybijira/data-import/custom-fields/javascript-calculated-custom-fields.

Please see the documentation on JavaScitp calculated custom fields and how to test them beforehand: https://docs.eazybi.com/eazybijira/data-import/custom-fields/javascript-calculated-custom-fields

The given code has parameter update_from_issue_key = “jpoh_parent_3” that describes from which Portfolio hierarchy level eazyBI should get the custom field value. In your case, the issue keys would be like this:

  • Demand, jpoh_parent_3
    • Epic, jpoh_parent_2
      • User Story, jpoh_parent_1
        • Sub-Task

Check out also this Community post on how to assert the right issue key for each Portfolio hierarchy level and import linked field dimension:

Best,
Zane / support@eazyBI.com