With ACM enabled, it defaults currency fields to have 2 decimal places. My client is in the manufacturing industry and they require 4 decimal places. Enabling ACM is necessary for this project due to requirements involving tracking previous and new rates. Is there a way around this?
If you look at the documentation under Activate and Deactivate Currencies, you'll discover there's an option when you activate a currency to set the number of decimal places that are displayed. Per the docs:
To activate new currencies:
- From Setup, enter Manage Currencies in the Quick Find box, then select Manage Currencies.
- Click New in the Active Currencies related list.
- Select a currency. Currencies are alphabetized using their ISO currency code.
- Enter the conversion rate relative to your corporate currency.
- Specify the number of decimal places to display for amounts in this currency.
- Click Save.
From the above, I'd conclude you may need to deactivate some of your currencies, then activate them again, setting the number of desired decimal points you need when you do. If the default currency is an issue, you may need to temporarily change it and do the same. You'll of course want to have all your data fully backed up for this kind of operation since I'd expect these changes to have serious consequences for the org to it's opportunity related data.
What's unfortunate is that if this were being done via Apex, you'd have the option to use the Decimal Class method
setScale() on any variables to change them to 4 decimal places. Sadly, that doesn't seem to apply to your situation. However, if the issue is one of what's displayed, vs what's stored, it could possibly apply. You'd want to check by running a query on your data and setting the scale of variables that hold what's returned.