Long Integer displays as float

Discussion of open issues, suggestions and bugs regarding ODAC (Oracle Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
bormo
Posts: 4
Joined: Mon 13 Aug 2007 17:50

Long Integer displays as float

Post by bormo » Mon 13 Aug 2007 18:03

Hi,

When length of integer value more than 15 digits it displays in grid as float (with E).

torasession.EnableIntegers and torasession.EnableNumbers do not help

toraquery.Options[FieldsAsString] helps but converts value to string

Somebody have solution?

Thank you!

Plash
Devart Team
Posts: 2844
Joined: Wed 10 May 2006 07:09

Post by Plash » Tue 14 Aug 2007 08:29

ODAC creates TFloatField for fields with large precision because the Integer data type in Pascal can hold only 9 decimal digits. The TDBGrid component converts these float values to strings using the FloatToStr function. There is no way to setup TDBGrid to display values in fixed format.
You should either set the FieldsAsString option, or use the TGrid component instead of TDBGrid and fill the grid manually using FormatFloat function to convert values to strings.

bormo
Posts: 4
Joined: Mon 13 Aug 2007 17:50

Post by bormo » Thu 16 Aug 2007 18:51

No, in this case grid is not a problem because I am using not standard Delphi grid.

Problem is - property EnableNumbers does not work on NET (when OraSession.Options.Net=true) and works properly on OCI connection.

How it can be fixed?

Plash
Devart Team
Posts: 2844
Joined: Wed 10 May 2006 07:09

Post by Plash » Fri 17 Aug 2007 07:15

We could not reproduce the problem.
Please supply us the following information
- exact version of ODAC including build number (see Oracle | About ODAC in the IDE menu);
- exact version of Delphi, C++Builder or Kylix.

bormo
Posts: 4
Joined: Mon 13 Aug 2007 17:50

Post by bormo » Sat 25 Aug 2007 07:54

Delphi 6 build 240 pack 2
ODAC NET 5.55.1.22

Plash
Devart Team
Posts: 2844
Joined: Wed 10 May 2006 07:09

Post by Plash » Mon 27 Aug 2007 09:10

This problem was fixed in the last ODAC version. You should install the last build of ODAC 5 or ODAC 6.

bormo
Posts: 4
Joined: Mon 13 Aug 2007 17:50

Post by bormo » Tue 28 Aug 2007 22:36

Thank you!

Post Reply