Another thing to check when upgrading from FMP 5.5 to 10
Just completed analyzing year end reports. Two different reports that totaled up over $4 million in expenditures came up with a 1 cent discrepancy. After some hours of work, I was able to identify a specific invoice that was the source of the problem. This invoice was originally created in FMP 5.5 and was part of a massive data import into the upgraded FMP 10 version.
A single line item in this invoice showed an incorrect result in the FMP 5.5 file while the converted copy showed the correct result.
The expression that was evaluating incorrectly in FMP 5.5:
Round( Net * UnitPrice , 2 )
Where Net = Gross - Tare
The values Gross = 40.3, Tare = <empty field>, Unit Price = 1.15 produce an incorrect result of 46.34 instead of 46.35 in the filemaker 5.5 version. In Filemaker 10, the result of 46.35 is correctly returned.
The above example represents a simplified version of the original calculation that I used to replicate the result with a completely new FMP 5.5 file so as to rule out any possible alternative causes.
Apparently, there was a bug in the FMP 5.5 Round function. Nice to see it has been fixed, but for those of us who may be upgrading to FMP 10, this is one more detail to check for when dealing with "pre-upgrade" data in our new version databases.