Pelo menos no dialeto 3 tá dando certo aqui. EXECUTE BLOCK returns (result_value numeric(12,4)) as declare variable var1 numeric (12,4)=0.2270; declare variable var2 numeric (12,4)=17.6000; begin result_value=:var1 * var2; /* resultará em 3.9952 */ suspend; end