创建一个度量,返回上下文中国家/地区和年份的所有订单的总和

问题描述 投票:0回答:1

我有一个订单表,其中包含卖家 ID、订单日期、金额和国家/地区(以及其他字段)。我需要一个度量来计算上下文中国家和年份的金额总和。因此,例如:

  • 如果我创建一个包含“年份”字段和此度量的表格视觉效果,它将显示每年所有国家/地区的总金额
  • 如果我创建一个包含字段“年份”、“国家”和此度量的表格视觉效果,它将显示每年每个国家的总金额
  • 如果我创建一个包含“日期”、“国家/地区”字段和此度量的表格视觉效果,它将不会显示该和国家/地区的总金额,但会继续显示该国家/地区的总金额
  • 如果我创建一个包含字段“卖家 ID”、“日期”、“国家/地区”和此度量的表格视觉效果,它将覆盖“卖家 ID”,并继续显示该国家/地区的年份总计

当然,此衡量标准将受到仪表板中任何活动的“年份”或“国家”过滤器的影响

我稍后会将这个措施用于多种目的。例如,在仪表板中仅过滤在上下文中选择的年份中订购超过一定数量的国家/地区

你能帮我吗?

powerbi dax
1个回答
0
投票

看看

ISINSCOPE
功能。

您的测量结果可能如下所示:

Your Measure = 
  var thisYear = YEAR(MAX(YourTable[Date]))
  var noSeller = ALL(YourTable[Seller Id])
  var noDate = 
    CALCULATETABLE(
      YourTable,
      REMOVEFILTERS(YourTable[Date]),
      YourTable[Year] = thisYear
    )

  return SWITCH(TRUE(),
    ISINSCOPE(YourTable[Seller Id]) && ISINSCOPE(YourTable[Date]),
      CALCULATE( SUM(YourTable[Amount]), noSeller, noDate),
    
    ISINSCOPE(YourTable[Seller Id]),
      CALCULATE( SUM(YourTable[Amount]), noSeller),

    ISINSCOPE(YourTable[Date]),
      CALCULATE( SUM(YourTable[Amount]), noDate),

    // else
      SUM(YourTable[Amount])
  )
© www.soinside.com 2019 - 2024. All rights reserved.