在连接到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
答案 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]
现在注释父视图的指示行。