【问题标题】:Multiply measure by column without aggregating the latter按列乘以度量而不聚合后者
【发布时间】:2019-07-15 21:11:28
【问题描述】:

我有以下数据集和用户国家作为过滤器。任务是计算收入 - 计算为本月支付的金额 - 上个月支付的金额。它应该以美元计算。将下表中的汇率相乘的解决方案,然后,使用 PREVIOUSMONTH 创建一个度量,然后,由于汇率波动大,做减法不起作用。

我们提供的解决方案是以当地货币计算收入。然后,如果用户从过滤器中选择了瑞士,则收入将乘以相应国家和相应日期的汇率。

这是实践中的公式。我的问题是我找不到乘以实际汇率的方法,因为我需要以某种方式汇总汇率,而我目前正在乘以averagex。

措施:

prior_month_sum_lc = CALCULATE(sum(fact_payment[sum_paid_to_date]),PREVIOUSMONTH(calendar_3[Date]))
 
revenue = sum(fact_payment[sum_paid_to_date])-[prior_month_sum_lc] 
 
revenue_used = IF(SELECTEDVALUE(fact_payment[country])="Spain",
[revenue] * AVERAGEX(fact_payment,fact_payment[xr_es]),0 )

手动计算

【问题讨论】:

  • 其实已经解决了。问题是在没有选择的情况下如何聚合。
  • 解决了什么问题?你还有问题吗?如果是这样,请说明它是什么,因为它不清楚。请提供所需结果的示例
  • @MarcoVos,上面的公式适用于单个国家/地区选择,但在选择全选时无效。要我开另一个线程吗?我已经在drive.google.com/file/d/1ADLoDNSVBFo-G_SYj30xPH490yTDNXrL/… 发布了示例,其中 final_selection 包含我正在处理的公式。没有选择国家/地区时,上个月不起作用。

标签: powerbi dax powerbi-desktop


【解决方案1】:

我认为您的设置不正确。你不应该平均汇率。这是没有意义的。相反,您应该将每个金额与其在行级别的汇率相乘并将结果相加。为此,您应该使用 SUMX 函数。此外,没有必要将汇率分成两列。只需使用一列。这些是我的结果:

以下是我使用的措施:

Month_Sum = sum(Sheet1[cum sum paid])
Month_Sum_Exchanged = SUMX('Sheet1','Sheet1'[cum sum paid] * 'Sheet1'[xr])
Previous_Month_Sum = CALCULATE([Month_Sum],PREVIOUSMONTH(calendar_3[Date]))
Previous_Month_Sum_Exchanged = CALCULATE([Month_Sum_Exchanged],PREVIOUSMONTH(calendar_3[Date]))
Revenue = [Month_Sum] - [Previous_Month_Sum]
Revenue_Exchanged = [Month_Sum_Exchanged] - [Previous_Month_Sum_Exchanged]

这是我的pbix file的链接

【讨论】:

  • 不,它给出的结果不正确 - 我在 xls 中手动进行了计算,结果与我的结果相符 - 请参阅我已更新响应。
  • 请更具体。什么结果不正确?您是否注意到您的结果被过滤到西班牙而我的不是?
  • 当然,从屏幕截图中可以看出,我在 xls 和 Power BI 中手动计算的结果是 2.26; 5.75; 3.9,在 urs 中是 2.26; 5.89; 5.7.我说它不正确的原因是我通过手动在 xls 中进行计算来确认它。
  • 我认为您仍在使用平均汇率,这可以解释我们的结果之间的差异。这是不正确的,或者至少是不准确的。如果你没有:那么你是如何手动计算你的值的?
  • 不,在 xls 中我没有平均它 - 请参阅屏幕截图。我已将计算结果上传至drive.google.com/file/d/1xnZUBnLSyaAXg3K9hKQ3Nk4KkkeZ7We_/…。我想我们可以达成协议,avergex 奇迹般地成功了。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-12-15
  • 1970-01-01
  • 1970-01-01
  • 2020-08-17
相关资源
最近更新 更多