【发布时间】:2018-01-08 20:29:37
【问题描述】:
度量“X”从不同的事实表中获取其值。让我们考虑时间(财政周、月)维度和渠道维度。对于这两个维度中的不同属性组合,X 会从不同的表中获取其值,如下所示:
- Week + Channel - 从表 FactTrafficByWeekChannel 获取
- Week - 从表 FactTrafficByWeek 获取
- 月 + 频道 - 从表 FactTrafficByMonthChannel 获取
- 月 - 从表 FactTrafficByMonth 获取
为了实现这一点,我将这些事实添加到多维数据集并创建了一个计算度量和范围脚本来覆盖范围。以下是范围脚本语句:`
CALCULATE;
CREATE MEMBER CURRENTCUBE.[Measures].[Y]
AS (0),
FORMAT_STRING = "Standard",
VISIBLE = 1;
Scope
([Measures].[Y],[Dim Time].[Fiscal Week].[Fiscal Week].Members
) ;
This = [Measures].[X - Vw Fact Total Weekly Traffic];
End Scope ;
Scope
([Measures].[Y],[Dim Time].[Fiscal Week].[Fiscal Week].Members,
[Dim Campaign].[Channel].[Channel].Members
) ;
This = [Measures].[X - Vw Fact Total Weekly Traffic By Channel];
End Scope ;
Scope
([Measures].[Y],[Dim Time].[Fiscal Month].[Fiscal Month].Members
) ;
This = [Measures].[X - Vw Fact Monthly Traffic];
End Scope ;
Scope
([Measures].[Y],[Dim Time].[Fiscal Month].[Fiscal Month].Members,
[Dim Channel].[Channel].[Channel].Members
) ;
This = [Measures].[X - Vw Fact Monthly Traffic By Channel];
End Scope ;
`
上面的代码在浏览窗格中拖动相应的维度属性时可以正常工作,但在添加到过滤器窗格时无法正常工作。 Fiscal Week dimension dragged to browsing pane 这行得通。但 Fiscal Week dimension dragged to filter pane 不起作用。 这是因为添加到筛选器窗格的属性被添加为子多维数据集语句。 当属性也被拖动到过滤器窗格时,有没有办法实现这一点? 时间维度 属性关系(如 Greg 所问)
非常感谢任何帮助。提前致谢
【问题讨论】:
-
为什么有 4 个度量组?总结一周的所有频道是否与您从周谷物事实表中获得的结果不符?周数是否累积到财政月?当然,如果按渠道按周的数据可以汇总到其他三个汇总级别,那么它肯定会简化问题并消除对任何 MDX 的需求。
-
不,周数据不能累积到会计月。基本上,每周、每月和每季度的新访客数量也不同。为了简化我使用周和月的问题。
-
问题是没有办法知道在多维多维数据集中的过滤器窗格中选择的属性,因为 DAX 中有一个函数“IsFiltered”来识别属性是否被过滤。不幸的是,MDX 中没有等效的功能
-
没有专家可以帮助回答这个问题吗?
-
您能否详细说明按周计算新访客数与按月计算的差异?我添加了一个答案,展示了如何检测多选,但怀疑 4 种以上的措施几乎不可能正确。但如果你解释一下新访客计数,也许有更直接的方法。