首页 文章

连续日期选择SAMEPERIODLASTYEAR

提问于
浏览
0

我被困在一个非常 - 我认为 - 这个简单的问题上,现在不再适用于我了 . 我已经创建了一项衡量过去几年(从2014年开始)零售额的计算方法:

Retails := CALCULATE(COUNT(fData[ProductionNumber);fData[OrderStatus]=50))

除此之外,我们的数据模型包括2014年1月1日至2018年12月31日的日历表 .

为了进行年度比较,我将“上一年度零售”定义为:

PY Retails := CALCULATE([Retails];SAMEPERIODLASTYEAR('Date'[DateKey])

不知何故,这让我陷入“连续日期选择” - 错误,我无法看到为什么或如何!使用这种方法计算PY销售额一直有效 . 不知何故,在这种情况下它没有 . 我已经检查了我的事实表,每个日期都包含在日历日期键中 . 我认为这可能与2016年2月29日有一个零售这个事实有关,然后在转回时它在2015年找不到相同的日期?

谢谢您的帮助!

1 回答

  • 1

    你是对的 - 这是SAMEPERIODLASTYEAR函数的一个相当愚蠢的弱点 . 为了避免它,我通常将它包装在IF ... SELECTEDVALUE测试中,以避免跨越多年,例如

    PY Retails := IF ( SELECTEDVALUE ( 'Date'[Year]; 0 ) = 0 ; BLANK() ;  CALCULATE([Retails];SAMEPERIODLASTYEAR('Date'[DateKey]) )
    

相关问题