Ssas MDX-根据父级将每行除以一个值

Ssas MDX-根据父级将每行除以一个值,ssas,mdx,cube,Ssas,Mdx,Cube,我所处的情况是,我需要根据不同的行数计算每个财政年度的百分比 我已经完成了城市方面每年的不同计数(相当简单的任务),并且达到了cube中的这两个列表 第一个列表是给定年份的全州不同计数。 第二个列表是给定年份的城市不同计数,百分比基于该城市当年的全州计数 我的问题是,我需要为每个给定年份的百分比列准备一个计算成员 例如,在2009年,城市1有2697个明显的数字,百分比提高了32.94%。(使用的公式=2697/8187) 我尝试了([Measures].[Distinct Count])/(S

我所处的情况是,我需要根据不同的行数计算每个财政年度的百分比

我已经完成了城市方面每年的不同计数(相当简单的任务),并且达到了cube中的这两个列表

第一个列表是给定年份的全州不同计数。 第二个列表是给定年份的城市不同计数,百分比基于该城市当年的全州计数

我的问题是,我需要为每个给定年份的百分比列准备一个计算成员

例如,在2009年,城市1有2697个明显的数字,百分比提高了32.94%。(使用的公式=2697/8187)

我尝试了([Measures].[Distinct Count])/(SUM(ROOT(),[Measures].[Distinct Count]),但没有成功

([Measures].[Distinct Count])/(SUM(ROOT(),[Measures].[Distinct Count])) 非常感谢您的帮助

提前谢谢

注:2009年全市总和永远不能等于该年全州不同计数。这是因为我们正在计算城市和州的不同计数


您需要为此创建一个区域层次结构,如State->City。创建一个如下所示的计算。然后在浏览器中,将层次结构放在左侧,并将销售额和计算出的百分比放在值中

([Dim].[Region].CurrentMember, [Measures].[Salesamt]) /
iif(
    ([Dim].[Region].CurrentMember.Parent, [Measures].[Salesamt]) = 0,
    ([Dim].[Region].CurrentMember, [Measures].[Salesamt]),
    ([Dim].[Region].CurrentMember.Parent, [Measures].[Salesamt])
)

您需要为此创建一个区域层次结构,如State->City。创建一个如下所示的计算。然后在浏览器中,将层次结构放在左侧,并将销售额和计算出的百分比放在值中

([Dim].[Region].CurrentMember, [Measures].[Salesamt]) /
iif(
    ([Dim].[Region].CurrentMember.Parent, [Measures].[Salesamt]) = 0,
    ([Dim].[Region].CurrentMember, [Measures].[Salesamt]),
    ([Dim].[Region].CurrentMember.Parent, [Measures].[Salesamt])
)