Filter Tuple by Linked Issue Dimension, Wrong Issue Type returned

Hi,

we have the following issue, that we have the following issue structure, connected by issue links

Multiple Epics <—> Multiple Test Tasks

I can easily filter the epics by an attribute, whereas the attribute is not existing on the Test Task.

I imported two Dimensions, TestTasks and TestTasksofEpic

Epic Attributes:

KEY: DEMO-1
...
TestTasks: DEMO-2
TestTasksofEpic:

Test Attributes:

KEY: DEMO-2
...
TestTasks:
TestTasksofEpic: Demo-1

Now we want to create a tuple of these test tasks

For TestTasksOfEpic, we created a calculated member

(
[TestTasksofEpic].DefaultMember,
[Issue Type].[Epic Task],
[Release Name].[DEMO Release]
)

which returns for me all Epic Tasks of that release.

Now if I want to filter the Test Tasks by that calculated member, I get the complete list of Epic Tasks, returned, not test tasks:

(
      [Measures].[Issues created],
      [Release Name].DefaultMember,
      [Issue Type].[Test Task],
      [TestTasksofEpic].[Current Release]
)

Is it possible to get the test tasks by a tuple (with a filter, we run into perfomance issues later).

I wanted to add, that we can’t use update_from_issue_key, as a Test Task can be associated with multiple Epics

Thank you,
Alex

Hi @thealexauer

I am not sure what you have as the resulting report in your mind and what precisely the calculated measure should count. However, there are some principles on how to change the context of the dimension in a report.

  1. Chose one perspective (for example, Test Task) as a base. Then you can build the calculation to redefine relation for another perspective (Epic Task)

  2. Use functions DefaultMember and DefaultContext() to redefine relation of linked issue dimension “Release Name”.

  3. If dimension (Issue Type, linked issue dimension “Release Name”) are mentioned from one perspective (Test Task), it should also be mentioned from another perspective (Epic Task).

For example, to get Test Task count by Release Name assigned of linked Epic Task, the expression might look like this:

NonZero(Count(
  --set of Test Tasks
  Filter(
    DescendantsSet([Issue].CurrentMember,[Issue].[Issue]),
    [Measures].[Issue type] = "Test Task" AND
    NOT IsEmpty([Issue].CurrentMember.Get('TestTasksofEpic')) AND
    ([Measures].[Issues created],
    [Release Name].CurrentHierarchy.DefaultMember) > 0 AND
    --for each issues check on linked Epic Tasks and if any has selected release name
    Sum(
      --set of linked Epic Tasks
      [Issue].[Issue].GetMembersByKeys(
        [Issue].CurrentHierarchyMember.Get('TestTasksofEpic') ),
      --if linked Epic Task issue has selected Release Name ignoring the rest of report context
      DefaultContext((
        [Issue].CurrentMember,
        [Measures].[Issues created],
        [Release Name].CurrentHierarchyMember))
    ) > 0
  )
))

More details on mentioned functions are here:

See also the picture below to see highlighted code parts representing Test Task and Epic Task perspective:

Best,
Zane / Support@eazyBI.com