Import data from link issue

Hi,

I have an issue (User Story) - that has link issue (‘relates to’ type) to other issue type with field X.

I try to create a report on eazyBI, that represents all my User Story issues and a measure that gets the X field data from the link issue of every User Story.

How can I do it ? All the tutorials and samples that I tried to look on didn’t bring me success :frowning:

Hi Daniel,

You could get the X value from linked issues by using GetMembersByKeys(…) function.

If you have not done this yet, you first would need to import the linked issue keys to the User stories. Settings similar to following should be added to advanced settings to define a new custom field with all linked issue keys

[jira.customfield_relates]
name = "Related issues"
outward_link = "relates to"
multiple_values = true

After you have imported the new Related issues custom field as property, you can use the keys it returns in the formula similar to the following.

Sum(
  [Issue].[Issue].GetMembersByKeys(
    [Issue].CurrentMember.get("Related issues")),
  ([Measures].[X created], [Issue Type].DefaultMember)
)

This formula would sum the ‘X created’ value of all related issues, ignoring the issue type that you probably use in Pages of report to filter only User stories.

Lauma / support@eazybi.com

Hi Lauma,

Your post is very interesting. I have a similar problem. I need to get the assignee of an issue with the link “regression caused by”

  1. I’ve defined a new custom field with the link. And it is OK.
    [jira.customfield_relates]
    name = “Regression link”
    inward_link = “regression caused by”
    multiple_values = true
    dimension = true

  2. I’ve created a new dashboard and I can see the issue with this link

Problem n°1 : I don’t know how to get tha assignee of this issue.I did what you have said but it doesn’t work…
Problem n°2 : I would like to see the assignee who had caused the regression in a time line…

My dashboard : month by month I would like to see the number of issues witch had caused regression and
stacked by assignee

I would be great if you could help me.
Regards,
Olivier

Hi Lauma,

Do you know how I can get the assignee of my issue link ?
Regards,
Olivier

Hi @Olivier!

If you have the Regression link dimension members on rows, you can get the Regression link assignee with following formula (by finding that Issue assignee)

(
  [Issue].[Issue].GetMemberByKey([Regression link].CurrentMember.key),
  [Measures].[Issue assignee]
)

The second question is more open to interpretation and I am not sure I fully understand the requirement. Could you send more details (probably to our support mail box) about what you would want to use in the report Rows and Columns and how would you like to filter your data?

Lauma / support@eazybi.com

Hi Lauma,
Thank you for your answer. It helped me a lot.
I put an example of graphs I would like to have. I hope it can help you…

Regards,
Olivier

Hi Oliver!

It is helpful! Still I have some follow up questions:

  1. What are the dates? Are those the created date of issue?
  2. Is this showing how many issues are created that have the inward regression link grouped by Assignee?

Lauma / support@eazybi.com

Hi Lauma,

  1. I need the resolved date of issue
  2. Almost, this is showing how many issues are resolved that have the inward regression link grouped by Assignee…I want to see all the resolved issues witch has caused the regression and who was the assignee

In the example below…my graphs has to show me the assignee of the issues “TEST regression 2” and “TEST regression”…and I would have 2 issues

Olivier

Hi Oliver,

I’m sorry I missed your followup earlier!

For this case the best solution would be to create a new calculated JavaScript custom field that would return one for each issue that has caused regression. Here are the advanced settings that would do that (please check the link name)

[jira.customfield_hascausedregression]
name = "Has caused regression and is"
data_type = "integer"
measure = true
javascript_code = '''
var issuelinks = new Array();
 if ( issue.fields.issuelinks ) {
  var links = issue.fields.issuelinks;
  for (var i = 0; i < links.length; i++) {
   var link = links[i];    
   if (link.inwardIssue) {
       if( link.type.inward == "regression caused by") {
         issue.fields.customfield_hascausedregression = 1;
         break;
       }
   }
   }
}
'''

Further, you can import “Has caused regression and is” custom field as a measure and use custom measure Has caused regression and is resolved together with Assignee and Time dimensions to see the count of issues that have Regression caused by link and are resolved.

Lauma / support@eazybi.com

Hi Lauma !
Wonderful, everything is working. Thanks a lot for your help !!!

1 Like