I have an MDX query that creates a calculated measure based on values in 2 dimensions:
With member measures.[CustomGrouping] As Case When [Location].[City].currentmember.member_name = "Location1" and [Grade].[Grade].currentmember.member_name = "1" Then "Group1" When [Location].[City].currentmember.member_name = "Location1" and [Grade].[Grade].currentmember.member_name = "2" Then "Group1" When [Location].[City].currentmember.member_name = "Location1" and [Grade].[Grade].currentmember.member_name = "3" Then "Group2" When [Location].[City].currentmember.member_name = "Location2" and [Grade].[Grade].currentmember.member_name = "1" Then "Group2" When [Location].[City].currentmember.member_name = "Location2" and [Grade].[Grade].currentmember.member_name = "2" Then "Group3" When [Location].[City].currentmember.member_name = "Location3" and [Grade].[Grade].currentmember.member_name = "1" Then "Group1" When [Location].[City].currentmember.member_name = "Location3" and [Grade].[Grade].currentmember.member_name = "2" Then "Group3" Else "UnknownGrouping" End Select { measures.[CustomGrouping], measures.[Cost] } on 0, [Location].[City].[All].Children * [Grade].[Grade].[All].Children Having measures.[Cost] <> 0 on 1 From MyCube
and then using SSRS I group all the results so I end up with the Total cost per CustomGrouping. Is there a way I can do this grouping inside the MDX query and not reporting services?
I was thinking of some kind of calculated set like (obviously this is incorrect):
With set CustomGroupingSet As Case When [Location].[City].currentmember.member_name = "Location1" and [Grade].[Grade].currentmember.member_name = "1" Then "Group1" When [Location].[City].currentmember.member_name = "Location1" and [Grade].[Grade].currentmember.member_name = "2" Then "Group1" When [Location].[City].currentmember.member_name = "Location1" and [Grade].[Grade].currentmember.member_name = "3" Then "Group2" When [Location].[City].currentmember.member_name = "Location2" and [Grade].[Grade].currentmember.member_name = "1" Then "Group2" When [Location].[City].currentmember.member_name = "Location2" and [Grade].[Grade].currentmember.member_name = "2" Then "Group3" When [Location].[City].currentmember.member_name = "Location3" and [Grade].[Grade].currentmember.member_name = "1" Then "Group1" When [Location].[City].currentmember.member_name = "Location3" and [Grade].[Grade].currentmember.member_name = "2" Then "Group3" Else "UnknownGrouping" End Select { measures.[Cost] } on 0, CustomGroupingSet Having measures.[Cost] <> 0 on 1 From MyCube
Is this possible?