MDX Get Sales 从 2 年前到今天

MDX Get Sales starting from 2 years ago to today

我正在尝试制作一个动态报告,从 2 年前财政年度的第一天到今天拉动销售额,并在每个新财政年度向前滚动。我们的财政年度与日历年不一致。 我的 MDX 经验很少,仍在学习中。

所以它应该查看今天的日期,获取当前财政年度,从中减去 2 年,然后提取从那一年到今天的销售额。

我在尝试让日期正常工作时遇到了一些困难,因为我遇到了错误,但是下面的查询现在为我提取了昨天的销售额。我想我也需要参考 [Date].[Year],但我不知道如何使用它来获得我想要的结果。

SELECT 
NON EMPTY 
{ [Measures].[Gross Margin Percentage], 
[Measures].[Gross Margin Value], 
[Measures].[Sales Value], 
[Measures].[Sales Units] } 
ON COLUMNS

FROM IMR

Where     
{StrToMember("[Date].[Date].&" + Format(CDate(now()-1), "[yyyy-MM-ddT00:00:00]"))}

如果您希望结果跨越一系列日期,请尝试在您的 WHERE 子句中使用 StrToSet 并以与您正在做的类似的方式构建。

您目前有这个:

Where     
{StrToMember("[Date].[Date].&" + Format(CDate(now()-1), "[yyyy-MM-ddT00:00:00]"))}

这是一个2天的例子,您可以根据自己的需要进行调整:

Where     
{StrToSet(
   "[Date].[Date].&" + Format(CDate(now()-3), "[yyyy-MM-ddT00:00:00]")
   + ":"
   "[Date].[Date].&" + Format(CDate(now()-1), "[yyyy-MM-ddT00:00:00]")
 )}