Estimados amigos :
Agradezco su valiosa experiencia para la solucion del siguiente problema :
Tengo un procedimiento de almacenado (Posgresql) que genera un refcursor ( cur1) del tipo,
OPEN cursor1 FOR EXECUTE ' SELECT
--
--
FROM
--
WHERE
--
ORDER BY -- ASC, -- DES ' ;
Dicho cursor genera apropiadamente una tabla de datos de N filas x 2 columnas.
El Problema que deseo resover es el de agregar como PRIMERA FILA de ese Refcursor, una que contenga otros datos, calculados a partir de tablas diferentes.
Tales datos tienen la siguiente forma:
TotalEst := ' SELECT sum .................................' ; -- TotalEst es varchar
TotalMat := ' SELECT count .................................' ; -- TotalEst es varchar
EXECUTE TotalEst INTO Est ; -- Est es numeric
EXECUTE TotalMat INTO Mat ; -- Mat es numeric
Los valores de Est y Mat , previamente convertidos al formato char , son los que necesito, incorporar al refcursor en la primera fila. En algunos casos, tales valores numericos de Est y Mat, pueden tomar un valor constante, en cuyo caso, no es necesario hacer un query para obtenerlos.
Con los valores de Est y Mat, he creado un nuevo refcursor (cursor2) y he probado la UNION de dos cursores ( con cursor1) , de multiples formas y no funciona. Lo que si funciona, pero es lo que desearia evitar, es hacer una nueva funcion que llama a aquella que genera a Cur1, y construye una taba de datos (SETOF), en la cual coloca en la primera fila, los valores Est y Mat . Pero como se ha dicho, no es la solucion deseable
Agradezco cualquier sugerencia para resolver el problema planteado, sea indicandome la forma correcta de realizar la UNION, o sea cualquier otra forma de agregar una fila a un refcursor ya creado ( DENTRO DE LA MISMA FUNCION, que crea al Cursor1) .
Gracias por los minutos que pudieren dedicar a atender la presente solicitud de ayuda.
Luis Asencio