我对多维立方体的经验不多,SQL和表格建模更是我的事。
我正在尝试创建一个计算的度量,它是跨时间段(月)的运行总计。问题是,我没有使用传统的日期维度,因为此“期间”维度具有“期初余额”类别。这是客户设定的要求。
[Dim Period]
表非常简单,它有一个密钥,从201800开始,一直到201812. 201800是开放期。我试图创建一个简单的层次结构,尽管没有低于Period的属性。
到目前为止,我已经想出了这个;
WITH MEMBER [Measures].[YTD Total] AS
Aggregate
(
PeriodsToDate
(
[Dim Period].[Period Hierarchy].[Period],
[Dim Period].[Period Hierarchy].CurrentMember
),
[Measures].[Total]
)
SELECT
{[Measures].[Total], [Measures].[YTD Total]} ON COLUMNS,
{[Dim Period].[Period Hierarchy].[Period]} ON ROWS
FROM
[My Cube]
这会在[Total]和[YTD Total]列中返回相同的值,所以我显然做错了。
作为参考,这是我在Tabular模型中创建的一个测量工具;
YTD Total:=CALCULATE([Total],FILTER(ALL(DimPeriod[Period]),DimPeriod[Period]<=MAX(DimPeriod[Period])))
任何指针都会受到极大的欢迎。
我想我找到了答案;
WITH MEMBER [Measures].[YTD Total] AS
Aggregate
(
PeriodsToDate
(
[Dim Period].[Period Hierarchy].[(All)],
[Dim Period].[Period Hierarchy].CurrentMember
),
[Measures].[Total]
)
SELECT
{[Measures].[Total], [Measures].[YTD Total]} ON COLUMNS,
{[Dim Period].[Period Hierarchy].[Period]} ON ROWS
FROM
[My Cube]