We have an Apps10 Customer (U23) that is selling in a non-base currency without Price lists or Agreements so simply taking the GBP Sales Part price and using the current exchange rate, in this instance CAD = 0.5327 to generate the Price/Curr on a Customer Order Line. They are having issues with rounding, with the Price/Curr and the Total CO Line Price not showing consistent values. We have conducted considerable analysis of the issue in the database and there is a difference in the performance of our own Apps10 environment versus the Customer’s environment.
Customer’s Environment example below;
Sales Part GBP Price = £93.50. (Base Price on Customer Order Line)
CAD Exchange Rate = 0.5327.
Calculated Sales Price on CO Line = CAD175.52 showing on CO Line (Regional Settings Currency Format = 0.00).
Sales Qty = 10
Total/Currency = CAD1755.21 (this does not equal 10 x £175.52).
The attribute string being passed into Customer_Order_Line_API.New shows values:
SALE_UNIT_PRICE - 175.52093110568800450535010325
BASE_SALE_UNIT_PRICE – 93.50
So Total/Currency does not equal the displayed Price/Curr x Sales Qty
This a just an example and the variance obviously gets worse as the values increase.
Our example of the same data in our own Apps10 environment (U12);
Sales Part GBP Price = £93.50. (Base Price on Customer Order Line)
CAD Exchange Rate = 0.5327.
Calculated Sales Price on CO Line = CAD175.52 showing on CO Line (Regional Settings Currency Format = 0.00).
Sales Qty = 10
Total/Currency = CAD1755.20
The attribute string being passed into Customer_Order_Line_API.New shows values:
SALE_UNIT_PRICE - 175.52
BASE_SALE_UNIT_PRICE – 93.50
When our Technical Consultant looked at the Attribute String and the Database, the following was uncovered;

It looks like our environment is providing a rounded SALE_UNIT_PRICE and the rounding variance is then being reflected back into the BASE_UNIT_SALE_PRICE (see 93.499504 above), whereas our Customer’s environment is showing the SALE_UNIT_PRICE as the non-rounded figure, and fixing the BASE_SALE_UNIT_PRICE at the original value of 93.50.
Very strangely however, when we duplicate the Customer Order Line in our Customer’s environment, we get the same result as our own environment, which is different to the Line it has been copied from.
Please be assured that we have spent considerable functional and technical time looking into this. We can confirm that our IFS Cloud (25R2) performs the same way as our Customer’s current Apps10 environment so there isn’t a fix that the Customer can look forward to in Cloud that resolves this issue.
There have been two IFS Cases raised in relation to this issue and this remains unresolved.
Can anyone shed any light on the difference in performance and especially, why, when copying a line in the Customer’s environment, a different result in achieved?