Check your eligibility for this 50% exam voucher offer and join us for free live learning sessions to get prepared for Exam DP-700.
Get StartedDon't miss out! 2025 Microsoft Fabric Community Conference, March 31 - April 2, Las Vegas, Nevada. Use code MSCUST for a $150 discount. Prices go up February 11th. Register now.
Hi,
I am trying to show a measure in local currency rate (after catering for null values) and to convert it to value in USD.
For this I am trying to follow steps at https://www.daxpatterns.com/currency-conversion/.
Unfortunately I am getting this error:
My sample file with above error is at link:
https://www.dropbox.com/s/hkhx0yziyakgtbn/Sample.pbix?dl=0
Can someone help? Thanks!
Solved! Go to Solution.
Hi @GraceTCL ,
You don't have the same granularity, on the exchange rate you have a value once a month and your data you have weekly values, altough they are all in the same month when you do the filtering of the table you can notice that the values for the weeks were the date does not match the end of the month you don't have results.
The image below comes from DAX studio and has you can see the result of the table is a empty value for the exchange rate:
If by other and you change the table to the month and year you get results however this needs to be picked up from the one side of the relationship in this case the exchange rate however the total is still zero:
An important part of the calculations is also the direction of the relationships in your case you have one to many from the exchange rate to the date table, if you use the date table you are using the many side of the relationship and you calculation will break.
If you use the formula I have sent (see example below adjusted to your file) the calculation is performed correctly:
Promo Cost USD V2 =
VAR DatesExchange =
SUMMARIZE (
'Exchange Rate',
'Exchange Rate'[end_date_id],
'Exchange Rate'[exchange_one_usd]
)
VAR Result =
SUMX (
DatesExchange,
DIVIDE (
[Promo Cost LC],
'Exchange Rate'[exchange_one_usd]
)
)
RETURN
Result
Context is everything in measures and it comes from the tables themselves, passing trough the relationships and going into visualizations and filters. In this case your issue is granularity and relationships.
Regards
Miguel Félix
Proud to be a Super User!
Check out my blog: Power BI em PortuguêsHi @GraceTCL .
The issue is with your granularity since you have information on a weekly basis but you exchange is on a monthly format the calculations aren't matching so you have blank values you need to have the following measure:
GMV_LC Exchange =
VAR DatesExchange =
SUMMARIZE (
'Exchange Rate',
'Exchange Rate'[end_date_id],
'Exchange Rate'[exchange_one_usd]
)
VAR Result =
SUMX (
DatesExchange,
DIVIDE(CALCULATE(SUM(FoodMetrics[GMV_LC])) , 'Exchange Rate'[exchange_one_usd])
)
RETURN
Result
also check the relationships:
Result below and in attach PBIX file:
Regards
Miguel Félix
Proud to be a Super User!
Check out my blog: Power BI em Português@MFelix Thanks for your reply. Your solution works.
May I clarify - base on your proposed calculation, are we instead summarizing the exchange rate and not the numbers in the FoodMetrics tables to a month wise view? Am I interepting wrongly as I thought it should be the other way round where we summarize the FoodMetrics table?
If there are null values in GMV_LC problem, will this dax formula still work?
Hi @GraceTCL ,
That is correct because you have different granularities between both tables so you need to pick up the values of the exchange rate first and then make the division.
Has you may notice on the calculation provided by DAXPATTERNS you add a column to the summarization of the Main table with the exchange rate, in this case I'm not doing that I'm picking up the value for that month of the exchange rate and use it on the division.
To avoid errors you can add an adittional parameter on the divide with a 0 or some other value similar to this:
GMV_LC Exchange =
VAR DatesExchange =
SUMMARIZE (
'Exchange Rate',
'Exchange Rate'[end_date_id],
'Exchange Rate'[exchange_one_usd]
)
VAR Result =
SUMX (
DatesExchange,
DIVIDE (
CALCULATE ( SUM ( FoodMetrics[GMV_LC] ) ),
'Exchange Rate'[exchange_one_usd],
0 -- alternative result if division is error or infinite
)
)
RETURN
Result
Regards
Miguel Félix
Proud to be a Super User!
Check out my blog: Power BI em PortuguêsHi @MFelix
Thanks for your reply.
For this: "the calculation provided by DAXPATTERNS you add a column to the summarization of the Main table with the exchange rate" I notice that too.
However I still dont understand why it doesnt work as I am summarizing the data in FoodMetrics table to the same month level granularity as the exchange rate table.
Are you able to advise if there is something that I need to change in the formula that that link? Thank you!
Hi @GraceTCL ,
You don't have the same granularity, on the exchange rate you have a value once a month and your data you have weekly values, altough they are all in the same month when you do the filtering of the table you can notice that the values for the weeks were the date does not match the end of the month you don't have results.
The image below comes from DAX studio and has you can see the result of the table is a empty value for the exchange rate:
If by other and you change the table to the month and year you get results however this needs to be picked up from the one side of the relationship in this case the exchange rate however the total is still zero:
An important part of the calculations is also the direction of the relationships in your case you have one to many from the exchange rate to the date table, if you use the date table you are using the many side of the relationship and you calculation will break.
If you use the formula I have sent (see example below adjusted to your file) the calculation is performed correctly:
Promo Cost USD V2 =
VAR DatesExchange =
SUMMARIZE (
'Exchange Rate',
'Exchange Rate'[end_date_id],
'Exchange Rate'[exchange_one_usd]
)
VAR Result =
SUMX (
DatesExchange,
DIVIDE (
[Promo Cost LC],
'Exchange Rate'[exchange_one_usd]
)
)
RETURN
Result
Context is everything in measures and it comes from the tables themselves, passing trough the relationships and going into visualizations and filters. In this case your issue is granularity and relationships.
Regards
Miguel Félix
Proud to be a Super User!
Check out my blog: Power BI em PortuguêsHi, @GraceTCL
I am not sure how your actual data model looks like, but I suggest changing the model a little bit like below.
All measures are in the sample pbix file.
https://www.dropbox.com/s/yk60lce8i1i6qxw/Sample%20%281%29.pbix?dl=0
Hi, My name is Jihwan Kim.
If this post helps, then please consider accept it as the solution to help other members find it faster, and give a big thumbs up.
Linkedin: linkedin.com/in/jihwankim1975/
Twitter: twitter.com/Jihwan_JHKIM
If this post helps, then please consider accepting it as the solution to help other members find it faster, and give a big thumbs up.
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Prices go up Feb. 11th.
Check out the January 2025 Power BI update to learn about new features in Reporting, Modeling, and Data Connectivity.
User | Count |
---|---|
144 | |
74 | |
63 | |
51 | |
47 |
User | Count |
---|---|
211 | |
85 | |
64 | |
59 | |
56 |