I have a currency field on my Opportunity object, in a multicurrency enabled org, and I have a numerical field in a child object of it, which holds an "always" GBP financial value.
I then have a trigger which at a certain moment in time needs to copy the numerical field into the Opportunity..
When I do this, the raw numerical value is dumped into the Opportunity, and then displayed as is against the Opportunity Currency ISO code.
eg. The child has a numerical value of 600.50 - which is known asolutely to be GBP, but when this is copied into an Opportunity whose currency setting is USD, it shows something like
600.50 USD (390.53 GBP)
(ths GBP bit is because of my locale settings, users in other currencies will see even more random conversions)
So my question is How do I indicate when I set a value into a multicurrency field that it is in fact in GBP - or - how do I determine what Curreny it is expecting, and convert my GBP value into it first? (even though in the second scenario, the display is just going to covert it right back in the bit in the brackets!)