Icon View Incident Report

Serious Serious
Reported By: Eric Hubert
Reported On: 10/10/2012
For: Version 4.34 Build 3
# 3675 ROUND Function Not Working Correctly with Floating-Point Numbers

The round function seem have problem on this situation :

ROUND (5.625 TO 2) return 5.62. For me, the result must be 5.63

ROUND (5.6251 TO 2) return 5.63. This is correct.


Comments Comments and Workarounds
The problem was with how the rounding function was being calculated. It would occasionally, depending upon the number, aggregate too many floating-point "representation" issues during intermediate calculation steps, which would cause the resulting rounded number to be different than expected. The workaround is to CAST the incoming value to a DECIMAL value first before passing it to the ROUND function.

This issue was originally reported for ElevateDB, but also affected DBISAM.


Resolution Resolution
Fixed Problem on 10/12/2012 in version 4.34 build 4


Products Affected Products Affected
DBISAM Additional Software and Utilities
DBISAM ODBC Client-Server
DBISAM ODBC Client-Server with Source
DBISAM ODBC Standard
DBISAM ODBC Standard with Source
DBISAM ODBC Trial
DBISAM VCL Client-Server
DBISAM VCL Client-Server with Source
DBISAM VCL Standard
DBISAM VCL Standard with Source
DBISAM VCL Trial
ElevateDB Additional Software and Utilities
ElevateDB DAC Client-Server
ElevateDB DAC Client-Server with Source
ElevateDB DAC Standard
ElevateDB DAC Standard with Source
ElevateDB DAC Trial
ElevateDB LCL Standard with Source
ElevateDB PHP Standard
ElevateDB PHP Standard with Source
ElevateDB PHP Trial
ElevateDB VCL Client-Server
ElevateDB VCL Client-Server with Source
ElevateDB VCL Standard
ElevateDB VCL Standard with Source
ElevateDB VCL Trial

Image