Creo que es ahí el detalle. Los campos no son de
DOUBLE PRECISION. Necesitas convertir a
DOUBLE PRECISION los campos COSTO y PRECIO al momento de hacer la consulta: Por ejemplo;
Código SQL
[-]
select cast(a.precio as double precision) / cast(a.costo as double precision) from ...
Puedes leer más al respecto en
http://www.firebirdfaq.org/faq79/
Saludos,
Chris