We are using BPC 7.5 for the Microsoft platform, in the FX translation logic we use FX_Override() to control the balance of several accounts in USD (equity and intercompany accounts). My understanding of the function is that the difference between the default translation and the override amount is supposed to be written to the account specified in the fx_diff parameter. However, all I cam able to get in the FX_Diff account is the value entered as the override amount. I have checked the member properties of the fx_diff account and did not see anything unusual. I have also tried creating a new fx_diff account (just in case something somewhere else was writing to the original on); the results were the same.
Does anyone have a suggestion on what we might be doing wrong, or where we should be looking to correct the issue? Included below is an example of what we have in the script logic, as well as an example of the values we are getting back from the system.
//FX Override Logic
FX_OVERRIDE( OR_ICPayRec, ICPayRec, fx_diff_ICPayRec, USD)
//End Script Logic
Assuming the inputs below and a default exchange rate of 1.25 Euro/USD
ICPayRec = 1,000
OR_ICPayRec = 1,200
The following is the result from our system
ICPayRec (LC) = 1,000
ICPayRec (USD) = 1,200
OR_ICPayRec (LC) = 1,200
FX_Diff_ICPayRec (USD) = 1,200
I would have expected the FX_Diff_ICPayRec to have a value of 50 based on the calculation below:ICPayRec (LC)* Default FX Rate = ICPayRec (USD) - Override Value = FX_Diff 1,000 * 1.25 = 1,250 - 1,200 = 50