[SalesForce] Validation Errors While Changing Currency Field

I am trying to update a field to show 4 decimal places. The field is a custom field and is a Formula(Currency). Other fields like this I went in changed it from 2 decimals to 4 with no problem. This last field is giving me this error

[There were custom validation error(s) encountered while saving the
affected record(s). The first validation error encountered was "One of
the objects selected for your roll-up summary uses dated exchange
rates and the other object does not. Roll-up summary fields can only
summarize values of currency fields if both objects convert values or
both objects do not.".]

The formula in the field is IF(Contract_Term__c = 0,0,Amount / ROUND(Contract_Term__c,0)
)

1) Not sure why it is talking about dated exchange rates we only have a single one active and no historical ones entered.
2) Not sure why it is talking about a Roll-up it is just a calculated field
3) I can't find any Roll-ups that even reference this field.

Best Answer

I'm going to hypothesize that

  • The parent object is Opportunity as the field amount is referenced
  • There are some RSF fields on Opportunity
  • The child detail object is not OpportunityLineItem but some custom object

Once dated exchange rates are enabled, they apply to the Opportunity, OpportunityLineItem, and a handful of other objects. They do not apply to custom objects. See doc

Dated exchange rates are used for opportunities, opportunity products, opportunity product schedules, campaign opportunity fields, opportunity splits, and reports related to these objects and fields. Dated exchange rates are not used in forecasting, currency fields in other objects, or currency fields in other types of reports.

Hence, the RSF on Opportunity against some child Detail object will fail with the error you noted

Also from the doc:

Organizations with advanced currency management support roll-up summary fields between two advanced currency management objects. For example, roll-up summary fields are supported from an opportunity line object to its opportunity object, because both are advanced currency management enabled. However, if you enable advanced currency management, you can’t create roll-up summary fields that calculate currency on the opportunity object rolling up to the account object, and you can’t filter on the opportunity currency field on the account object. All existing currency-related roll-up summary fields on the opportunity object are disabled and their values are no longer calculated. If your organization enables advanced currency management, you should delete any currency roll-up summary fields using opportunities and accounts or opportunities and custom objects.

Dated exchange rates are very useful on Opportunities but only if you have more than one currency enabled.

Related Topic