Power BI中如何从累计销售数据计算单期数值?
解决累计销售转单期数值的DAX度量值问题
你的原度量值存在几个关键问题,导致无法得到正确结果:
prev_sales变量定义时缺少等号,属于语法错误;- CALCULATE中直接引用
current_sales变量,无法正确获取上期的累计值; - 筛选条件
'sales'[period] = 'sales'[period] - 1在当前行上下文里逻辑矛盾,无法定位到上一期数据。
根据你期望的结果(Period1:4,Period2:2,Period3:7),可以使用以下修正后的度量值:
sales_single_values = VAR current_period = SELECTEDVALUE('sales'[period]) VAR current_cumulative = SUM('sales'[sales cumulative]) VAR prev_cumulative = CALCULATE( SUM('sales'[sales cumulative]), 'sales'[period] = current_period - 1 ) RETURN IF( current_period = 1, current_cumulative, // 第一期无上期,直接取累计值作为单期值 current_cumulative - prev_cumulative )
代码说明
current_period:获取当前上下文的周期编号,确保能精准定位上一期;current_cumulative:计算当前周期的累计销售值;prev_cumulative:通过CALCULATE筛选出上一期的累计销售值;- 最后通过IF判断,第一期直接返回累计值,后续周期用当前累计减去上期累计得到单期数值。
内容的提问来源于stack exchange,提问作者Piotrek
相关产品推荐
相关产品推荐

