Subject Numeric (18,0) problem
Author Guillermo Najar-Arreola
I'm using Firebird 1.0 with Delphi 6 UP2; my problem relates with BCD data
and I don�t know if the problem resides on Delphi or Firebird, so I'm sorry
if my post is not 100% Firebird related and If you can help me, I'd
appreciate very much.

I have a table field defined as Numeric(18,0) in Firebird 1.0. The table has
about 7800 records, and that field (called OID_VENDOR) started at 1, 2, 3
... ending with vaule 7,800.
On my D6 UP2 app, I have the SQLDataSet-Provider-ClientDataSet components
linked to VENDOR table. When the DataModule is created, I get an
EDataBaseError exception: "BCD Overflow" and the application can't go on.
OID_VENDOR is defined in the SQLDataSet and ClientDataSet as Persistent
ftFmtBCD field.
I created a test application with a DBGrid on a window to show the table,
using the same components as on my main application. The program ran ok, but
on the OID_VENDOR field I saw that the first 9 records (with OID values from
1 to 9) show "=" or "?" instead of the actual OID values 1..9. From 10 to
99, the values are show ok; from 100 to 999, it shows the first 2 digits of
the number, but the 3rd is garbled with "=" or "?".

What is happening ?