私はテーブルにフィールドを持つ販売を持っている:日、収益、およびCURRENCYCODEDAX 2つのテーブル間の為替レートをどのように計算するのですか?
は、私がフィールドValidFrom、ValidTo、一方ExchangeRateで一方ExchangeRateテーブルを持っており、 通貨コード。
私は一方ExchangeRate、ValidTo ValidFrom 間と落ちる販売日付と両方のテーブルの試合からCURRENCYCODEによって収入を乗算する必要があります。
私はテーブルにフィールドを持つ販売を持っている:日、収益、およびCURRENCYCODEDAX 2つのテーブル間の為替レートをどのように計算するのですか?
は、私がフィールドValidFrom、ValidTo、一方ExchangeRateで一方ExchangeRateテーブルを持っており、 通貨コード。
私は一方ExchangeRate、ValidTo ValidFrom 間と落ちる販売日付と両方のテーブルの試合からCURRENCYCODEによって収入を乗算する必要があります。
は、あなただけの乗算Rate
追加の列またはメジャーでRevenue
値によって、その後Rate
ExchangeRate
からテーブルを取るためにSales
テーブルに計算列を作成することができます。
はSales
計算列でこの表現を使用して、私は今あなたがRevenuneでレートを乗算するための指標を作成することができますExchangeRate
ExchangeRate =
CALCULATE (
MAX (ExchangeRate[ExchangeRate]),
FILTER (
FILTER (ExchangeRate, [CurrencyCode] = EARLIER (Sales[CurrencyCode])),
[ValidFrom] <= EARLIER (Sales[Date])
&& [ValidTo] >= EARLIER (Sales[Date])
)
)
の名前:
RevenueXRateMeasure = SUM(Sales[Revenue])*SUM(Sales[ExchangeRate])
それとも、列を好む場合を使用:
RevenueXRateColumn = [Revenue]*[ExchangeRate]
これは役に立ちます。
EARLIER機能は全く新しいものでした。また、ネストされたFILTERを持つ目的は何ですか? – ronrule
@ronrule、EARLIER関数を使用すると、ExchangeRateテーブルコンテキストからSalesテーブルの列にアクセスできます。内部FILTERはCurrencyCodeがSalesテーブルのCurrencyCodeと同じ行のみを残し、2番目のFILTERはその行を取り、日付範囲にある行をフィルタリングします。 –
お客様のモデルはCurrencyRateとSalesの間にCurrencyCode列を使用して関係していますか? –
いいえ、私は一意のCurrencyCodesでブリッジテーブルを作成できます。 – ronrule
私はそれが厳密に必要ではないと思うが、物事を簡単にする必要があります私の答えを試してくださいそれはあなたのために関係を追加せずに動作することができます。 –