Hi @aherz,
The main benefit of cumulative sum is the ability to handle the inexplicit order of members according to sorting, filtering, or manual removal of entries.
It also allows us to see where the required resources reach the limit threshold.
However, that causes trouble when you want to create cumulative sub-totals resetting multiple times over the displayed list of entries.
Addressing the same measure from itself poses the risk of an infinite loop or excessive recursive loops for longer continuous lists of displayed members. Therefore, it is forbidden.
If you have no specific conditions for ordering the members and are looking for the cumulative sum for the epics - you might iterate through the siblings of the displayed member to find the cumulative sum for the siblings thus far, respecting the original order of siblings according to their creation.
If each version only appears in one continuous block of siblings, you might use the different hierarchies of the Issue dimension to “save” the current row.
In that case, the expression for finding the cumulative sum of story points for Epics having the same Issue Fix Versions Selected might be something of the kind.
CASE WHEN
[Measures].[Issues created]>0
THEN
Sum(
--switching hierarchy to "save" current issue
[Issue].[Issue].GetMemberByKey(
[Issue.Epic].CurrentHierarchyMember.Key),
--numeric value - value from filtered rows
Sum(
--filter relevant previous members
Filter(
--set of epics thus far
{
[Issue.Epic].CurrentMember.FirstSibling:
[Issue.Epic].CurrentMember
},
--relevant siblings
([Measures].[Issues created],
--reset the default hierarchy to ignore "saved" issue
[Issue].DefaultMember)>0
AND
--compare versions
CAST(
DefaultContext(
([Measures].[Issue Fix Versions Selected],
--reset Epics hierarchy to see value of "saved" issue
[Issue.Epic].CurrentMember)) as string)
=
Cast(
DefaultContext(
([Measures].[Issue Fix Versions Selected],
--reset the default hierarchy "saved" issue to see the value of sibling being evaluated
[Issue].CurrentMember)) as string)
),
([Measures].[Story Points created],
--reset "saved" issue from default hierarchy
[Issue].DefaultMember)
)
--end of switching hierarchies
)
END
However, the viability of this approach depends on multiple additional conditions and the actual setup.
I suggest contacting support directly with a full description of the situation and all the details, including all custom calculations that make up your report, to find a reasonable approach.
Regards,
Oskars / support@eazyBI.com