Introduction
In this article:
- The base currency is US Dollar (USD)
- Two entities were created for testing:
Invoice
andInvoice Detail
, with a one-to-many relationship between them
Basic Concepts
Currency is a field type in Dynamics CRM used to store monetary values. When a currency field is created in an entity, the system automatically generates four related fields in the background.
For example, when a currency field named Amount is added to the Invoice Detail entity, the following fields are created:
gdh_amount
– stores the actual currency valuegdh_amount_Base
– stores the base currency value, calculated from the actual value and exchange rate
Additionally, two more fields are involved:
- Currency
- Exchange Rate
Creating New Currencies
Go to Power Platform Admin Center → Select Environment → Enter Settings → Choose Currencies.
On the pop-up page, add a new currency:
For this experiment, two new currencies were added: RMB and JPY.
Currency Name | Currency Code | Symbol | Exchange Rate | Precision |
---|---|---|---|---|
US Dollar | USD | $ | 1.0000 | 2 |
RMB | CNY | ¥ | 7.2500 | 2 |
JPY | JPY | JPY¥ | 147.6300 | 2 |
Notes
- When the exchange rate is updated, Dynamics CRM does not recalculate existing currency fields.
- Exchange rates are defined by the system administrator.
Creating Test Data
No. | Currency | Amount | Amount(Base) | Exchange Rate |
---|---|---|---|---|
SASD-00001260 | JPY | JPY¥ 1,000.00 | $6.77 | 147.6300000000 |
SASD-00001259 | US Dollar | $1,000.00 | $1,000.00 | 1.0000000000 |
SASD-00001258 | RMB | ¥ 1,000.00 | $137.93 | 7.2500000000 |
As shown, if the selected currency is not the base currency, Amount(Base)
is automatically calculated based on Amount
and Currency
.
Adding Rollup for Currency
What happens when a rollup field is added to a currency? Here, a currency field Example - Total Amount was created in the Invoice entity:
Rollup rule configuration:
Rollup result:
The field Example - Total Amount
calculates based on the related currency values. The process is: Currency → Exchange Rate → Example - Total Amount(Base) × Exchange Rate.
Notes
- In CRM, rollup fields are periodically updated. Update frequency can be configured in system jobs, but the minimum interval is once per hour.
- Rollup calculation can also be triggered manually. By clicking the small calculator icon beside the rollup field, a Recalculate button appears:
User Default Currency
Although the base currency is set to USD, each user in CRM can configure their default currency. When creating a new Invoice record, the Currency field will default to the user’s chosen currency.
For example, if user test06 sets the default currency to JPY and creates a new Invoice record:
The currency field on the form is automatically set to JPY:
Comments