我在过去的两天里一直在尝试理解这一点,我真的只需要一些提示。我正在使用带Power Pivot的Excel 2010并计算库存。我正在尝试获得两个日期之间的销售数量。如果商品有库存,我会记录下手头的数量。
Item # Day Date Qty
Black Thursday 11/6/2014 2
Blue Thursday 11/6/2014 3
Green Thursday 11/6/2014 3
Black Friday 11/7/2014 2
Green Friday 11/7/2014 2
Black Monday 11/10/2014 3
Blue Monday 11/10/2014 4
Green Monday 11/10/2014 3有没有办法在dax中做到这一点?我可能不得不在excel中计算每条记录的差异,但如果可能的话,我想避免这种情况。
一些让我很难做的事情。
1)我只记录周一到周五的库存。我不确定这种情况是否会一直存在,所以我希望避免仅在工作日对此的依赖。2)当没有库存的时候,我没有当天的记录
我试过,用dateadd计算,结果几乎是正确的,但最终过滤掉了一些结果。真的很奇怪,但几乎是正确的。
任何帮助都是非常感谢的。
发布于 2014-12-21 20:20:01
布莱恩,这可能不能完全回答你的问题,因为有一些事情我不完全清楚,但它应该会给你一个开始,如果你提供进一步的信息,我很乐意扩展我的答案。
您可以使用的一种‘模式’涉及TOPN函数,当与参数n=1一起使用时,它可以返回表中的最早或最新值,该表按日期排序,并可以过滤为早于/晚于指定的日期。
在本例中,我使用了一个“断开连接”的日期表,用户可以从该表中选择切片器或报表过滤器中所需的两个日期:
=
CALCULATE (
SUM ( inventory[Qty] ),
TOPN (
1,
FILTER ( inventory, inventory[Date] <= MAX ( dates[Date] ) ),
inventory[Date],
0
)
)在这种情况下,TOPN返回早于或等于所提供的最新日期的最新日期的单行表。TOPN中的第一个参数指定行数,第二个参数指定要使用的表,第三个参数指定要排序的列,第四个参数指定降序排序。
从这里开始,可以直接将其调整为第二个度量,该度量查找所选最早日期之前或等于最早日期的最新日期的值(即,用MIN替换MAX (DatesDate)中的MAX)。
希望这能有所帮助。雅各布
*使用daxformatter.com美化
https://stackoverflow.com/questions/27582850
复制相似问题