![]() |
Procedure
Hola... el problema que tengo es el siguiente por ejemplo
CREATE PROCEDURE ABS (NUMERO DECIMAL(12,2)) RETURNS (ABS_NUMERO DECIMAL(12,2)) AS BEGIN IF (NUMERO >= 0) THEN ABS_NUMERO = NUMERO; ELSE ABS_NUMERO = NUMERO * (-1); END la creo sin problemas y al querer utilizarlo de la siguiente forma me da error SELECT ABS(NUMERO1-NUMERO2) NRO_PSOTIVO FROM TABLA ERROR: [INTERSOLV][ODBC InterBase driver][InterBase]Dynamic SQL Error, SQL error code = -804, Function unknown, ABS alguien me puede indicar donde tengo el error que no me puedo dar cuenta o que me esta faltando saludos y gracias de antemano |
cual es la estructura de tu tabla?
numero1 y numero2 son dos campos de ella? será:
|
Es que estas intentando utilizar un procedimiento como si fuera una funcion y son dos cosas distintas.
Una función, o UDF, si puedes utilizarla de la manera que describes. Por cierto, interbase incluye una UDF llamada ABS. Un procedimiento almacenado, que es lo que tú tienes, tienes que utizarlo con EXECUTE PROCEDURE. |
resp
El procedimiento debe ser tratado como una tabla |
Rufus... como hago para poder utilizar ABS que esta en las UDF que mencionaste???
Gracias a todos salu2 |
Resp
Donde instalas firebird
Directorio de firebird\UDF\ib_udf.sql Ese sql contiene la funcion. Solo ejecutalo. Pero si quieres solo esa funcion ejecuta solo el codiog d eesa funcion |
La franja horaria es GMT +2. Ahora son las 06:58:36. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi