DAX Power Pivot度量值–具有where条件的上一个值



我正在寻找一个DAX度量来计算体积=数量*价格,其中价格是给定产品的上一个价格。

换句话说,我正在寻找具有上一个先前值的DAX度量;其中";条件

以附件工作簿中的示例为例:我有3种产品:

  • 苹果
  • 香蕉
  • 橙子

每个都有一个美元价格,数量只是数量*价格。

不过,桔子也可以换苹果!

为了总结这些橙子与其他美元交易的苹果兑换交易价值,我首先需要计算橙子的美元价值,为此,我需要知道为苹果支付的最后价格,即上一次价格,其中product=apple。

以附件工作簿中的示例为例:

  • 上一次买苹果的价格是5美元
  • 售出的10个苹果的总美元价格(数量(为:10*50=USD50
  • 随后,以每只橙子4个苹果的价格将3个橙子换成了苹果
  • 3个橙子的总美元价格(体积(为:3x4x5=60美元,即#橙子数量*橙子与苹果的比例*苹果的上一个价格
  • 总交易额=50+60=110美元

此示例文件中还有几个示例:https://docs.google.com/spreadsheets/d/1PTaKg9a3Yv1um2RTnpeYC4gdLVjQXEzl/edit?usp=sharing&ouid=106440602605717108817&rtpof=真&sd=真实

我要找的是一个DAX公式,它给我上一个带有条件、筛选器或where子句的值。

以下作为计算列工作,但成本很高,因为它使用EARLIER:

=
VAR Conditional_Volume = IF(Transactions[product] = "orange_apple",
CALCULATE(
MAX(Transactions[price]), 
ALL(Transactions),
(Transactions[product]="apple"),    
Transactions[transaction_id] < EARLIER(Transactions[transaction_id])
)*Transactions[price]*Transactions[quantity],Transactions[price]*Transactions[quantity])
RETURN Conditional_Volume

最新更新