SSAS MDX计算的度量-[ITEMS]的计数。[Item]分组到[Items]。[Item Group]

时间:2019-01-18 22:30:19

标签: excel mdx

在连接到SSAS的Excel中,我试图使用“ OLAP工具”和/或“ OLAP数据透视表扩展”构建数据透视表并添加自定义度量计算。我正在尝试添加一个在我看来非常简单的计算,但是我无法使其正常工作。我需要的计算是:

  

目标:[项目]维记录的记录计数,按任何   [项目]维度字段。

尤其是我正在尝试按[Items].[Items Groups][Items].[Item]分组。项目是最低谷物,因此计数应返回值“ 1”。我创建了一些类似的计算方法(请参阅下文)。但是计算结果似乎并没有达到预期的效果。

我尝试过的事情:

  

尝试#1- [Measures].[Items Count (With net amount values)]

DISTINCTCOUNT( {[Items].[Item].MEMBERS} )
     

“项目计数(含净额值)”计算结果为   返回一个不错的计数值,但看起来它仅对物料计数   是否找到跨国记录(不确定原因)。而且,当   在最低谷物级别,calc将为父级返回该值   组,而不是在行上选择的维度级别。

     

尝试#2- [Measures].[Items Count (All)]

[Items].[Item].[Item].Count
     

此计算返回整个维度的TOTAL项目计数   无论放置在行上的尺寸级别如何。

     

尝试#3- [Measures].[Items Count]

COUNT ( { [Items].[Item].MEMBERS}, EXCLUDEEMPTY)
     

此计算冻结了Excel,我必须退出Excel。不知道为什么。我在几个不同的站点上都看到过推荐使用的sytnax。

截屏:

请帮助?这似乎很简单,但是我对MDX不太熟练。在DAX和SSAS TABULAR中,这将是非常简单的表达。但是我很难用SSAS MD中的MDX计算行数。

“外购牛肉”组中有18项交易,但共有41项。我不知道如何计算“ 41”值。

SSAS Excel-CalcMeasure-CountRows.png

enter image description here

1 个答案:

答案 0 :(得分:1)

在AdventureWorks上查看以下示例。

with member [Measures].[CountTest]
as 
count(existing  [Product].[Subcategory].members - [Product].[Subcategory].[All])
select 
{
[Measures].[Internet Sales Amount],[Measures].[CountTest]
}
on columns,
{
([Product].[Category].[Category]
,[Product].[Subcategory].[Subcategory] -- comment this line for the second result
)
}
on rows 
from [Adventure Works]

enter image description here

现在注释父视图的指示行。

enter image description here