Re: Llamando a funcion con diferente tipo de dato de retorno

From: Desarrollo Escuintla <desarrollo(dot)escuintla(at)gmail(dot)com>
To: pgsql-es-ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Llamando a funcion con diferente tipo de dato de retorno
Date: 2010-06-02 21:55:45
Message-ID: 4C06D361.7030402@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

El 02/06/2010 03:54 p.m., Desarrollo Escuintla escribió:
> El 02/06/2010 03:51 p.m., Elio Gerson Clímaco Herrera escribió:
>> Saludos al foro tengo dos funciones, en la primera verifico si existe
>> un registro y si es asi llamo a una segunda función para que muestre
>> sus datos, pero me bota el siguiente error
>> (ojo las funciones son solo demostrativas)
>>
>> *ERROR: error de sintaxis en o cerca de «spUsuarioMostrar»*
>> *LINE 1: spUsuarioMostrar( $1 )*
>> *
>> *
>> *
>> Create or Replace Function spUsuarioLogear
>> (
>> Cuenta Varchar,
>> Contra Varchar
>> )
>> Returns Integer As
>> $Body$
>> Declare Mensaje Integer;
>> Personal Integer;
>> Begin
>> Select UsuCod::Integer
>> Into Personal
>> From Usuario
>> Where UsuCta iLike $1 And
>> UsuCla Like $2;
>>
>> If Personal = 0 Or Personal Is Null Then
>> Mensaje := 0;
>> Else
>> spUsuarioMostrar(Personal); <<<<< aqui llamo a la funcion
>> spUsuarioMostrar
>> Mensaje := 1;
>> End If;
>> Return Mensaje;
>> End;
>> $Body$
>> Language 'plpgsql' Volatile;
>> *
>> *
>> *
>> *
>> *
>> *
>> *
>> *
>> *
>> *
>> Create or Replace Function spPersonaMostrar
>> (
>> Codigo Integer
>> )
>> Returns SetOf RefCursor As
>> $Body$
>> Declare Lista RefCursor;
>> Begin
>> Open Lista For
>> Select T0.UsuCod As "Codigo",
>> T0.UsuCta As "Cuenta",
>> T0.UsuCla As "Asta",
>> T1.SGerCod As "SGerCod",
>> T1.SGerNom As "Sub Gerencia",
>> T2.PerNom As "Nombres",
>> T2.PerApe As "Apellidos"
>> From Usuario T0
>> Inner Join UoSubGerencia T1 On (T0."SGerDoc" = T1.SGerCod)
>> Inner Join Persona T2 On (T0.Percod = T2.PerCod)
>> Where T0.UsuCod = $1;
>> Return Next Lista;
>> Return;
>> End;
>> $Body$
>> Language 'plpgsql' Volatile;
>> *
> Hola,
> creo que el resultado de la funcion **spPersonaMostrar()
> debe ser guardado, segun el retorno ****Returns SetOf RefCursor,
> en la linea donde se llama**** :
>
> ***
> If Personal = 0 Or Personal Is Null Then
> Mensaje := 0;
> Else
> -->aca
> --> spUsuarioMostrar(Personal); <<<<< aqui llamo a la funcion
> spUsuarioMostrar
> Mensaje := 1;
> End If;
> *
>
> --
>
>
> _______________
> José de Paz
> Escuintla, Guatemala.
> Tel. 00-502-56041676
>

--

_______________
José de Paz
Escuintla, Guatemala.
Tel. 00-502-56041676

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Jaime Casanova 2010-06-02 23:06:47 Re: postgresql en aix
Previous Message Elio Gerson Clímaco Herrera 2010-06-02 21:51:17 Llamando a funcion con diferente tipo de dato de retorno