How to Query Multi-Currency Fields in Salesforce
In continuation to my earlier post about setting up multi-currency in Salesforce, this post will focus on how to query the multi-currency fields in SOQL and some cool formula features which you can use while dealing with multi-currency fields.SetupLet’s do the setup first.The corporate currency set in the Salesforce org is the Canadian Dollar i.e. CAD.Apart from the Canadian Dollar, other currencies supported are – U.S. Dollar (USD), Swiss Franc(CHF), and Indian Rupee(INR).Rates are also uploaded in the Salesforce org as shown below -Scenario:Opportunity record is having the currency field named “Opportunity Amount”. We need to fetch the Opportunity Amount based on the user’s currency mentioned in their user record.Solution:In order to fetch the Opportunity Amount based on the user’s currency, we can use Format() and convertCurrency() functions in SOQL.Format(): This function can be used in SOQL select statement to format date, time, and currency fields based on the given user locale.convertCurrency(): This function can also be used in SOQL select statement to convert the currency fields to the user’s currency.Using the above two functions here is the SOQL statement:SELECT Name, CurrencyIsoCode, Amount,FORMAT(convertCurrency(amount)) ConvertedinUserCurrency FROM Opportunity WHERE Name = ‘Burlington Textiles Weaving Plant Generator’Here is the result:As you can see, even though in this particular opportunity, the amount is saved in USD, but with the help of above two functions, we are able to convert the currency to the...
Read More