Yo tengo definido los campos como Numeric(10,2) en Firebird con dialecto 3 y no he tenido problemas hasta ahora.
Si el valor proviene de cualquier otro sitio, puedes hacer esto:
Código Delphi
[-]
valor := 23,2367;
valor := trunc(valor *100) /100;
Saludos