1

我有一个快照事实表,其时间粒度为每月,因此度量值只是时间点,而不是随时间累积的。我需要导出一个上年末值,以将任何给定月份的值与上一年末进行比较,如下所示:

| 月 | VAL1 | 上一篇YEVal |

| 2014-10 | 101 | 100 |

| 2014-11 | 103 | 100 |

| 2014-12 | 105 | 100 |

| 2015-01 | 110 | 105 |

| 2015-02 | 115 | 105 |

| 2015-03 | 113 | 105 |

...

| 2015-12 | 120 | 105 |

| 2016-01 | 130 | 120 |

ETC...

我正在使用 SSAS,并且时间维度表是这样设置的,其中包含 Year->Quarter->Month->Day 层次结构。

我可以找到上个月的解决方案、滚动月份数并获得 YTD 累积值,但这是一个直接的时间点到时间点比较。

我正在尝试使用 Lag、Ancestor 和/或 ParallelPeriod,但我似乎无法获得上述结果集。

4

1 回答 1

2

尝试:

Create member CurrentCube.[Measures].[PrevYEVal] as null;
Scope([Date].[Calendar Hierarchy].[Month].Members);
  [Measures].[PrevYEVal]=([Date].[Calendar Hierarchy].CurrentMember.Parent.Parent.PrevMember.LastChild.LastChild, [Measures].[Val1]);
End scope;
于 2015-10-31T00:35:35.333 回答