在Power BI中使用IF和值()的错误总计

时间:2017-01-27 15:51:02

标签: powerbi

我正在努力获得与去年销售额和销售年度相关的新销售量和销售额损失。我试图在表中显示这个,然后用一年切片器过滤该表。 以下是我使用过的公式:

SalesPY = CALCULATE(SUM(SalesData[Value]),SAMEPERIODLASTYEAR('Calendar'[DateKey]))

SalesYTD = TOTALYTD(SUM(SalesData[Value]), 'Calendar'[DateKey])

NewSalesUppdate = SUMX(VALUES(SalesData[CustomerName]),IF([SalesYTD] > 0 && [SalesPY] = 0, [SalesYTD]))

LostSalesUppdate = SUMX(VALUES(SalesData[CustomerName]),IF([SalesYTD] = 0 && [SalesPY] > 0, -[SalesPY]))

LostSalesOld = IF([SalesPY] > 0 && [SalesYTD] = 0, -[SalesPY])

NewSalesUppdate公式可以正常工作并正确总结。但是,LostSalesUppdate不起作用,尽管与NewSalesUppdate相比具有相反的公式。似乎IF语句永远不会成为现实。这很奇怪,因为LostSalesOld公式显示了正确的值,但它没有显示总数。

所有提示都表示赞赏!

示例数据:

Sample Data

当前结果:

Current Result 注意客户A没有YTD销售额。 LostSalesOld在销售中显示-85000,但总数中没有反映出来。 LostSalesUppdate根本没有显示任何内容。

期望的结果:

Desired Result 现在其中一个丢失的销售列(无关紧要)具有客户A的值和总计

1 个答案:

答案 0 :(得分:0)

关注LostSalesUppdate,问题是上下文之一。您的衡量标准是"对于SalesData表中的每个客户名称​​ ,如果他们去年有销售而今年没有销售,则告诉我去年的销售否定"。

问题(而且我承认它很微妙),是因为今年客户A没有销售,客户A 就此度量而言,SalesData表。因此,公式的其余部分将被忽略。

我建议添加一个单独的表,其中包含客户列表,类似于您的日期表(每个客户一行)。然后,更新您的LostSalesUppdate公式,以便不是从SalesData中提取CustomerName,而是从新的客户表中提取它。

url
相关问题