如何在MDX状态中检查轴上是否存在一个维度?
我需要检查axis1上存在多少时间单位(天,周,月......)并使用它来计算度量。这是一个例子,应该发生什么,我采取了一些方面:
days -> [Measures].[A] = [Measures].[B] / number of members in axis 1, from only date dimension (365)
months -> [Measures].[A] = [Measures].[B] / number of members in axis 1, from only date dimension (12)
months, product group -> [Measures].[A] = [Measures].[B] / number of members in axis 1, from only date dimension (12)
因此,与日期维度不同的维度不应影响加工。我只需要依靠[Date]维度来计算成员。
答案 0 :(得分:1)
一个简单的例子是计算天数:
With
Member [Measures].[Members on rows] AS
Axis(1).Count
Select
Non Empty [Measures].[Members on rows] on columns,
Non Empty [Date].[Day].[Day].Members on rows
From [Sales]
Where [Date].[Month].[Month].&[201701]
但是你只能获得行数,你无法预测轴上发生了什么。您还可以检查整个属性计数=报告属性计数:
Count(existing [Date].[Day].[Day].Members) = Count([Date].[Day].[Day].Members)
如果它返回 true ,则很可能意味着您没有使用过滤报告中的[日期]。[日]层次结构。