web
You’re offline. This is a read only version of the page.
close
Skip to main content

Notifications

Announcements

No record found.

Community site session details

Community site session details

Session Id :
Microsoft Dynamics CRM (Archived)

Historical exchange rate - how to achieve it in CRM 2011?

(0) ShareShare
ReportReport
Posted on by 55

Hi,

Unfortunately, MS CRM currency logic is not adequate because it updates the money fields each time you edit an Entity. Example: Consider a scenario where you gave an offer two months ago when exchange rate was 0.8, and two months later (now the exchange rate is 1.1) you update this opportunity as Won and CRM automatically recalculates the Base value… and in the end, you lose the original amount that you sent the client.

Question:

One solution crossed my mind... It was to create custom Historical exchange rates entity, and then add one Date field next to each Money field (to represent the date of exchange rate). After that I would add a plugin that would recalculate the base value each time – basically I would undo the recalculation that CRM does in the background.

But this seems to be a waste of time if I am not allowed to change the base value (read only field) - I read this on th Dynamics CRM blog. Is this true? Does anyone see any other option I could use to get this functionality working?

Thank you in advance,

Kind regards,

Luka

 

*This post is locked for comments

I have the same question (0)
  • Gus Gonzalez Profile Picture
    27,113 on at

    I don't understand, if I have an opportunity that reads 100 Euros and I change the Dollar to Euro exchange rate, the Opportunity should still show 100 Euro.

    The only fields that should change are the "Currency (Base)" fields. So, if you have these fields on the form then switch to the regular Currecy fields and leave the (Base) fields out of the form.

  • Luka Gospodnetic Profile Picture
    55 on at

    Hi Gus,

    Yes, you have 100 Euro, and the exchange rate changes and in the end Currency (base) field changes..

    The problem is if you get into that Opportunity a month later, and change Status of the Opportunity (or any currency field), CRM will get the new (up-to-date) exchange rate, and the Base value will change, and this is not OK.

    AX, Navision,... every product has historical exchange rate, but CRM doesn't :(

    If we create the report about the value of opportunities in domestic (base) currency using the current model of Currency in CRM, we could have a big difference because the exchange rates change every day (i.e. my countries curreny vs. dollare changes almost 7% in two months).

    Currently I see two options:

    1. Add an additional currency field to the entity (not visible on the form). Add Date field on the form. Using plugin, calculate the domestic currency amount using the exchange rate for a given date and store it in the new currency field. Basically, create my own version of "Base" field that CRM doesn't recalculate

    2. Second option is to recalculate Base field AFTER CRM has recalculated it (POST event) directly in the database (this option also requires adding addition Date field to the form to keep track of the Exchange Rate date

    Both options require to create a extendding exchange rate to allow historic data entry.

    Is there any other options?

    Tnx,

    L.

  • Gus Gonzalez Profile Picture
    27,113 on at

    Luka,

    On those reports you are creating, are you pulling the information from the fields without "(base)" on them?

    Because I think that this is the problem here. When you create a currency field, for example "Fee", CRM will create two fields, one named "Fee" and the other one named "Fee (Base)", the "Fee" field should not change after changing Exchange rates. The field that changes after Exchange Rates is "Fee (Base)" this field always contains the equivalent in Dollars for the amount stored on "Fee".

    Does that make sense?

  • Luka Gospodnetic Profile Picture
    55 on at

    Hi Gus,

    The report are using base fields because the report has to show the sum of all amounts in domestic currency (there can be numerouse differenct currency used to calculated the total sum for example 100Euro + 100$ + 100Jen = XXX kn).

    The explanation you gave is absolutly correct, and it makes sense, but that is the description how CRM works and not the effect that comes from the "by design CRM logic"  that I am trying to avoid...

    To make it simpler, my goal is to succeed in having an option to set the currency date, so that no matter what happens with the Entity, you will always have the same Exchange currency that is set for that specific date.

    Unfortunatly, CRM doesn't allow us to change the Base currency fields,  and it doesn't provides with "pre commit" event, that I would use to edit Base fields after it did it's magic (recalculation with new currency).

    So all that I can do is the two options that I wrote earlier...unless someone (hopefully :)) has a better and easier option :)

    L.

  • Moshe Hayun Profile Picture
    365 on at

    Hi Luka

    did you find any solution for this? :)

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Responsible AI policies

As AI tools become more common, we’re introducing a Responsible AI Use…

Neeraj Kumar – Community Spotlight

We are honored to recognize Neeraj Kumar as our Community Spotlight honoree for…

Leaderboard > 🔒一 Microsoft Dynamics CRM (Archived)

#1
SA-08121319-0 Profile Picture

SA-08121319-0 4

#1
Calum MacFarlane Profile Picture

Calum MacFarlane 4

#3
Alex Fun Wei Jie Profile Picture

Alex Fun Wei Jie 2

Last 30 days Overall leaderboard

Featured topics

Product updates

Dynamics 365 release plans