We see an issue in our upgrade project from 8.0 to 9.8 when using the service pub.math.multiplyFloats. The following is the inputs we are giving to the service:
num1: 26.85
num2: .5
Precision: 2
Output in 8.0: 13.42
Output in 9.8: 13.43
Is there any fix to be done to avoid this difference?
Hi Ashok,
according to algebra the output in 9.8 is correct.
round down when reminder is between 0 and 4
round up when reminder ist between 5 and 9
See Usage Notes in Build-In-Services Guide:
Usage Notes
Make sure the strings that are passed to the service in num1andnum2 are in a localeneutral
format (that is, using the pattern -####.##). Passing locally formatted strings may
result in unexpected results. For example, calling pub.math:addFloats in a German locale
with the arguments 1,23 and 2,34 will result in the value 357, not 3.57 or 3,57.
Use the watt.server.math.floatOperation.mode property to specify whether the
pub.math:multiplyFloats service return the exact result of an operation involving two floating
point numbers, the result as calculated by the JVM, or the result based on a fixed number
of decimal places. See webMethods Integration Server Administrator’s Guide for more
information about the watt.server.math.floatOperation.mode property.
Regards,
Holger