Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

The ultimate Microsoft Fabric, Power BI, Azure AI & SQL learning event! Join us in Las Vegas from March 26-28, 2024. Use code MSCUST for a $100 discount. Register Now

Reply
Aleli
Frequent Visitor

dynamic computation based on slicer

Hi,

 

Can anyone suggest a simpler way to show converted amount to USD?

 

Currently, here's what I have:

Table 1 - COUNTRY, YEAR, MONTH, INCOME (in local currency)

Table 2 - YEAR, MONTH, LOCAL CURRENCY, EXCHANGE RATE (to convert local currency to USD)

Year Slicer from 2013 to 2017 -- Whatever is selected will be treated as "CURRENT YEAR" (CY), and will be compared against the "PRIOR YEAR" (PY = CY-1) income.

 

My goals:

Present CY and PY figures in a bar chart. X-axis=COUNTRY, Y-axis=INCOME

Add a new slicer that will give the user an option whether to use current year or prior year exchange rate

 

I believe only the CY figure should change, depending on the exchange rate year slicer.

 

Many thanks!

1 ACCEPTED SOLUTION

There are a few approaches, depending on your data.

 

If you have monthly data for all months and every month as exchange rate data too, you can do this.

 

create a calendar table that contains the months (with a unique ID)

Join the 2 data tables (Table 1, Table 2) to this one common calendar table.

 

When you filter from the calendar table by month, both table 1 and table 2 will be filtered.  You can then "harvest" the exchange rate with something like this

 

Rate To Use = Max(Table2[Exchange Rate])

 

As long as you only have every month covered once and always once, this formula will give you the exchange rate.

 

To work out the conversion, you could use something like this

Income Local Currency = sum(table1[Income])

Converted Rate = sumx(Calendar,[Income Local Currency] * [Rate To Use])

 

For the time intelligence needs, take a read of the article I posted this week here http://exceleratorbi.com.au/dax-time-intelligence-beginners/



* Matt is an 8 times Microsoft MVP (Power BI) and author of the Power BI Book Supercharge Power BI.

View solution in original post

1 REPLY 1

There are a few approaches, depending on your data.

 

If you have monthly data for all months and every month as exchange rate data too, you can do this.

 

create a calendar table that contains the months (with a unique ID)

Join the 2 data tables (Table 1, Table 2) to this one common calendar table.

 

When you filter from the calendar table by month, both table 1 and table 2 will be filtered.  You can then "harvest" the exchange rate with something like this

 

Rate To Use = Max(Table2[Exchange Rate])

 

As long as you only have every month covered once and always once, this formula will give you the exchange rate.

 

To work out the conversion, you could use something like this

Income Local Currency = sum(table1[Income])

Converted Rate = sumx(Calendar,[Income Local Currency] * [Rate To Use])

 

For the time intelligence needs, take a read of the article I posted this week here http://exceleratorbi.com.au/dax-time-intelligence-beginners/



* Matt is an 8 times Microsoft MVP (Power BI) and author of the Power BI Book Supercharge Power BI.

Helpful resources

Announcements
Fabric Community Conference

Microsoft Fabric Community Conference

Join us at our first-ever Microsoft Fabric Community Conference, March 26-28, 2024 in Las Vegas with 100+ sessions by community experts and Microsoft engineering.

February 2024 Update Carousel

Power BI Monthly Update - February 2024

Check out the February 2024 Power BI update to learn about new features.

Fabric Career Hub

Microsoft Fabric Career Hub

Explore career paths and learn resources in Fabric.

Fabric Partner Community

Microsoft Fabric Partner Community

Engage with the Fabric engineering team, hear of product updates, business opportunities, and resources in the Fabric Partner Community.