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

Buenas tardes foreros:

Tengo este Procedimiento Almacenado, que al crearlo se crea sin problemas:
Código:
CREATE OR REPLACE FUNCTION pdameusuario(pnum_identidad bpchar, pclave bpchar) RETURNS SETOF refcursor AS
$BODY$
DECLARE curCursor refcursor;
BEGIN

	--ACCEDIO POR CERTIFICADO
	IF pclave='' THEN
		OPEN curCursor FOR SELECT cod_usuario, num_identidad, clave, nombre, apellido_1, apellido_2, 
					calle, email, TUSUARIOS.cod_pais, TPAISES.PAIS, TUSUARIOS.cod_provincia, TPROVINCIAS.provincia, ciudad, codigo_postal, 
					fec_alta, foto, notificar_email, estrellas, cuenta_activa
				  
					FROM tusuarios
						INNER JOIN TPAISES
							ON TPAISES.COD_PAIS = TUSUARIOS.COD_PAIS
						INNER JOIN TPROVINCIAS
							ON TPROVINCIAS.COD_PROVINCIA = TUSUARIOS.COD_PROVINCIA

					WHERE NUM_IDENTIDAD = pnum_identidad;
		RETURN NEXT curCursor;
	END IF;
	
	--ACCEDIO NORMAL
	IF pnum_identidad<>'' and pclave<>'' THEN
		OPEN curCursor FOR SELECT cod_usuario, num_identidad, clave, nombre, apellido_1, apellido_2, 
					calle, email, TUSUARIOS.cod_pais, TPAISES.PAIS, TUSUARIOS.cod_provincia, TPROVINCIAS.provincia, ciudad, codigo_postal, 
					fec_alta, foto, notificar_email, estrellas, cuenta_activa
				  
					FROM tusuarios
						INNER JOIN TPAISES
							ON TPAISES.COD_PAIS = TUSUARIOS.COD_PAIS
						INNER JOIN TPROVINCIAS
							ON TPROVINCIAS.COD_PROVINCIA = TUSUARIOS.COD_PROVINCIA

					WHERE NUM_IDENTIDAD = pnum_identidad
					AND   CLAVE =pclave;
		RETURN NEXT curCursor;
	END IF;

	RETURN;
END;
$BODY$
LANGUAGE 'plpgsql' VOLATILE;

Pregunta, ¿Como debo llamarlo para comprobar que me funciona y me devuelve datos?

Cuando lo ejecuto me sale el siguiente resultado: "<unnamed portal 1>"
__________________
Charlie.