Hola.
Ni idea sobre lo que te está fallando. Aunque para darte una alternativa, yo no utilizo UDF's, todas mis funciones las programo en procedimientos almacenados.
Por ejplo.
Código SQL
[-]SET TERM ^ ;
create procedure "asPrueba" (
NUM numeric(15,2))
returns (
RESULT numeric(15,2))
as
begin
RESULT = NUM;
suspend;
end
^
SET TERM ; ^
Ahora si quieres utilizar esta función en una consulta cualquiera, la puedes llamar como una subconsulta. Es decir:
Código SQL
[-]
select XXXX,
(select RESULT from "asPrueba"(TABLA.CAMPO)) as IMPORTE
from TABLA
Gestionar tus funciones en procedimientos almacenados es más sencillo que hacerlo en librerías externas (es más sencillo hacer una instalación nueva, una restauración de un sistema, etc. ...). Y muy complejo tiene que ser el problema para que no lo puedas programar en T-SQL.
Saludos.