Ver Mensaje Individual
  #3 (permalink)  
Antiguo 10/12/2007, 14:59
chcma
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 20 años, 10 meses
Puntos: 7
Re: Que falla en este Procedimiento Almacenado ?

Buenas de nuevo Foreros.

En primer lugar, agradecerte nuevamente Seyko por tu ayuda, muchos de los avances que he hecho han sido gracias a tu respuestas, asi que no esta de mas ser agradecido, por lo que reitero mis agradecimientos.

Y en segundo lugar, jejejeje, bien, he mirado la página y bueno he visto algo que he solido hacer para hacer mis pruebas.

Cuando creo una funcion que recibe como parametro un refcursor, bien, no tengo problema para recuperar los datos de la funcion:
Código:
FUNCTION PDAMEDATOS(refcursor).....

--Esto sería la llamada
SELECT * FROM PDAMEDATOS('micursor');
FETCH ALL IN micursor
Muy bien, en el caso anteriormente expuesto no tengo problemas, recibo datos sin ningún problema.

Sin embargo, con esta función que he puesto en el primer POST sigo con los problemas, tal y como vi en tu página estoy haciendo la llamada de las siguientes maneras:
Código:
--Manera 1
BEGIN;
SELECT * from pdameusuario(777777-X', 'miclave');
FETCH ALL IN "<unnamed cursor 1>";
COMMIT;

--Manera 2
BEGIN;
SELECT pdameusuario(777777-X', 'miclave');
FETCH ALL IN "<unnamed cursor 1>";
COMMIT;

--Manera 3
BEGIN;
SELECT * from  pdameusuario(777777-X', 'miclave');
FETCH ALL IN "<unnamed portal 45>";
COMMIT;

La cuestión es, que si solo ejecuto:
Código:
SELECT * from  pdameusuario(7777777-X', 'miclave');
Recibo lo siguiente: "<unnamed portal 46>"

Y cada vez que lo ejecuto, va subiendo un valor: "<unnamed portal 47>", etc..., de ahi he puesto la "Manera 3", creo que es la que por el mejor camino voy, pero... todavía no soy capaz de recuperar el registro.

Como he dicho al principio, se como recuperar cursores, cuando son pasados como parametro, pero en este caso... se me está complicando un poco.
__________________
Charlie.