Hola Guillermo!
Tal vez se deba al dialecto que utilizas para el SQL, si utilizas el dialecto 1 seguramente te tomará los campos NUMERIC como TFloatField, sin embargo, si utilizas el dialecto 3 te tomará los campos como BCD,
Cuando creas una base de datos puedes definir el dialecto que vas a utilzar de la siguiente manera:
Código SQL
[-]
SET SQL DIALECT 3;
CREATE DATABASE 'NUEVA.FDB' USER 'SYSDBA' PASSWORD 'masterkey'
PAGE_SIZE 1024 DEFAULT CHARACTER SET NONE;
También en los componentes Delphi debes indicar el dialecto que utilizas.
Espero que te sea útil.