Would like to create a Program Board (Issue A "is required by" Issue B)

A typical Program Board would list fields in the left side, then have the issueLink to another jira story with its associated field values. This would typically require a join of the 2 records. Is this possible with easyBI?

e.g.
ROW: Issue A, estimate, fixversion, sprint | ‘is required by’ | Issue B, estimate, fixversion, sprint

Thank you,
Kendall

Hi @kalton,

The first step in meeting your requirement is defining a new issue link in the eazyBI advanced settings. Please see our documentation page on how to define issue links - https://docs.eazybi.com/eazybijira/data-import/advanced-data-import-options/import-issue-links.

Then you can create the report and define calculated measures to display the linked issue sprints, fix versions, and estimates. See a picture of a report below:

In the case above, issues can have multiple issues linked to them. That complicates the formulas of the calculated measures.

To display the estimate, sprint, and fix version values for A issues, use the appropriate measures “Original estimated hours”, “Issue Sprint”, and “Issue fix versions”. You can use the linked issue property to display the linked issues. In my case, it is the “Issue Bugs Caused” property. It is defined in the eazyBI advanced settings with the help of the linked documentation page.

Next, to display the relevant information for the linked issues, define calculated measures that retrieve the issue value. In the case you have only one issue linked to each A issue, you can use the formula below in a new calculated measure to retrieve the linked issues Original estimate:

([Issue].[Issue].GetMemberByKey(
  [Issue].CurrentHierarchyMember.Get('Bugs Caused')
),[Measures].[Original estimated hours])

Use the same template to retrieve issue sprint and fix version, changing the measure in the last line.

If the issues can have multiple links, use the formula below to retrieve the sum of the Original estimate for all linked issues:

Sum(
  [Issue].[Issue].GetMembersByKeys(
    [Issue].CurrentHierarchyMember.Get('Bugs Caused')
  ),
  [Measures].[Original estimated hours]
)

To see the linked issue sprints, use the formula below:

NonEmptyString(Generate(
  Filter(
    [Issue].[Issue].GetMembersByKeys(
      [Issue].CurrentHierarchyMember.Get('Bugs Caused')
    ),
    [Measures].[Issue Sprint] <> '(no sprint)'
  ),
  cast([Measures].[Issue Sprint] as string),
  ","
))

And for fix versions:

NonEmptyString(Generate(
  Filter(
    [Issue].[Issue].GetMembersByKeys(
      [Issue].CurrentHierarchyMember.Get('Bugs Caused')
    ),
    [Measures].[Issue fix versions] <> '(no version)'
  ),
  cast([Measures].[Issue fix versions] as string),
  ","
))

Please have a look at our documentation page for more information on defining calculated measures -​ https://docs.eazybi.com/eazybijira/analyze-and-visualize/calculated-measures-and-members.

Best,
Roberts // support@eazybi.com

@roberts.cacus, thank you for the details. Our issues will potentially have multiple links as you mention. The linktype will fall into (2) groups: Predecessors: “is required by, blocks” or Successors: “requires, is blocked by”. I will review the referenced link and get back to you if needed. Thank you! Kendall