我有一个基本的仪表板,它由一个单独的“网格”对象组成,该对象在业务单元层次结构中按时间显示3个度量...
在业务单位层次结构中的任何级别中对单个项目进行过滤时,所有内容都会正确汇总...
但是,当我过滤同一级别的多个项目时,累计值不再基于可视总计...
在上图中,“全部”行中的值表示整个未过滤业务单位层次结构的值。如果网格卷起来就好像“VisualTotals”已启用...无论过滤器选择如何都是理想的。在这种情况下,对于上面的第二个图像,我希望“All”行中的值看起来像......
PO E-PO Count = 3531 (497 + 3034)
PO Count = 7923 (2094 + 5829)
我考虑过使用VisualTotals() MDX function,但我不想自定义查询,因为我在某个地方读到它会降低最终用户上/下/跨越的能力。
答案 0 :(得分:1)
原来这就是PPS的工作原理。我最终使用分析器捕获在两种情况下生成的MDX,PPS使用计算成员聚合多选(而不是使用像Excel这样的SUBSELECT),所以当ROWS级别与HIERARCHIZE函数拼接在一起时,你得到了非视觉总数的影响...
WITH MEMBER [Business Unit].[Segment Division Plant].[ Aggregation] AS
Aggregate
(
{
[Business Unit].[Segment Division Plant].[Plant].&[PAK]&[FLG]&[2520]
,[Business Unit].[Segment Division Plant].[Plant].&[PAK]&[FLG]&[2504]
}
)
,SOLVE_ORDER = 0
SELECT
...<snip>...
Hierarchize
(
{
[Business Unit].[Division Plant].[All]
,Descendants
(
[Business Unit].[Division Plant].[All],
,AFTER
)
}
) ON ROWS
...<snap>...
如果它使用类似Excel的SUBSELECT,行为代表VisualTotals,MDX将如下所示......
FROM
(
SELECT
{
[Business Unit].[Segment Division Plant].[Plant].&[PAK]&[FLG]&[2504]
,[Business Unit].[Segment Division Plant].[Plant].&[PAK]&[FLG]&[2520]
} ON COLUMNS
FROM [<cube name>]
)