如何忽视“无效客户群”?

时间:2016-02-02 04:50:51

标签: powerpivot dax

DimGroupCustomer表

╔═══════════════╦═══════════╦══════════════╗
║ CustomerGroup ║ Customer  ║ GroupCardKey ║
╠═══════════════╬═══════════╬══════════════╣
║ A             ║ Customer1 ║ ACustomer1   ║
║ A             ║ Customer2 ║ ACustomer2   ║
║ B             ║ Customer1 ║ BCustomer1   ║
║ B             ║ Customer3 ║ BCustomer3   ║
║ C             ║ Customer4 ║ CCustomer4   ║
║ C             ║ Customer5 ║ CCustomer5   ║
╚═══════════════╩═══════════╩══════════════╝

FactSale表

╔═════════╦══════════════╦════════╗
║ Invoice ║ GroupCardKey ║ Amount ║
╠═════════╬══════════════╬════════╣
║       1 ║ ACustomer1   ║    100 ║
║       2 ║ BCustomer3   ║    200 ║
╚═════════╩══════════════╩════════╝

我写了一个“BoughtSomething?”测量和结果看起来像

╔══════════════╦═════════════════╗
║ GroupCardKey ║ BoughtSomething ║
╠══════════════╬═════════════════╣
║ ACustomer1   ║ YES             ║
║ ACustomer2   ║ NO              ║
║ BCustomer1   ║ NO              ║
║ BCustomer3   ║ YES             ║
║ CCustomer4   ║ NO              ║
║ CCustomer5   ║ NO              ║
╚══════════════╩═════════════════╝

但我不希望看到任何有效的客户群。我试过但失败了。请帮我看一下这样的报告。

╔══════════════╦═════════════════╗
║ GroupCardKey ║ BoughtSomething ║
╠══════════════╬═════════════════╣
║ ACustomer1   ║ YES             ║
║ ACustomer2   ║ NO              ║
║ BCustomer1   ║ NO              ║
║ BCustomer3   ║ YES             ║
╚══════════════╩═════════════════╝

1 个答案:

答案 0 :(得分:1)

试试这个。基本上检查客户组是否在当前日期过滤器上下文中购买了某些内容,如果是,请检查单个客户:

Bought Something:=IF(
 CALCULATE(COUNTROWS(FactSale), ALLEXCEPT(DimGroupCustomer[CustomerGroup])) >0,
  IF(COUNTROWS(FactSale)>0,"YES",NO")
)