Yudelsy Castellón García escribió: > He buscado en internet y he visto que en el return de la función ponen > un SETOF de la tabla que se devuelve y en otros casos ponen un record. > En mi caso no puedo poner un SETOF de una tabla específica porque se > consultan varias y si pongo que devuelva un record entonces en la > llamada de la función hay que ponerlo de la forma select * from > nombre_funcion() as variable(aqui hay que especificar todas las columnas > que devuelve la funcion), pero el problema es que no puedo especificar > las columnas porque la consulta devuelve resultados donde la cantidad de > columnas es variable porque es un reporte dinámico.
Hmm, normalmente no es buen diseño tener una función que devuelve resultados de distinto número/tipo de columnas. Te aconsejaría revisitar esa decisión, y tener una función para cada distinto tipo de resultado que vayas a tener. Si insistes, lo que puedes hacer es una función que retorne un "refcursor", al cual tu aplicación le hace FETCH. Puedes encontrar ejemplos en los archivos de esta lista. -- Alvaro Herrera Vendo parcela en Valdivia: http://www.portalinmobiliario.com/propiedades/fichas.asp?PropID=749682 "No hay hombre que no aspire a la plenitud, es decir, la suma de experiencias de que un hombre es capaz" -- TIP 6: ¿Has buscado en los archivos de nuestra lista de correo? http://archives.postgresql.org/pgsql-es-ayuda