Hola Amadis y saludos a todos...
Pues yo he hecho la prueba con Firedac y tambien me falla, pero el mensaje es diferente:
expression evaluation not supported
A continuación lo he intentado directamente desde IBExpert con la siguiente sentencia:
Código SQL
[-]
UPDATE tbl_articulos SET
precio_coste_Medio = round( (precio_coste_Medio * (:f)) ,0)
where id=1;
y obtengo el mismo error.
Después de investigar un poco, parece que Firebird "desconfía" del tipo de parámetro, y solo va a permitir la sentencia si aseguramos su tipo, por lo que la sentencia siguiente me ha funcionado sin problemas:
Código SQL
[-]
UPDATE tbl_articulos SET
precio_coste_Medio = round( (precio_coste_Medio * cast(:f as numeric(8,2)) ) ,0 )
where id=1;
De todas formas, me desconcierta que con IBX funcione.
Saludos ...