Re: Mi primera funcion en POSTGRESQL

From: "usuario anonimo" <opinante(dot)anonimo(at)gmail(dot)com>
To: "MIGUEL CANCHAS" <mcanchas(at)tsr(dot)com(dot)pe>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Mi primera funcion en POSTGRESQL
Date: 2007-10-03 14:24:57
Message-ID: 91b524660710030724r47202455y773aa2a4bfef2acd@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

El 3/10/07, MIGUEL CANCHAS <mcanchas(at)tsr(dot)com(dot)pe> escribió:
> CREATE OR REPLACE FUNCTION "public"."Datos_fichas" (numero_ficha varchar)
> RETURNS SETOF "pg_catalog"."record" AS
> $body$
> DECLARE retorno RECORD;
> BEGIN
>
> FOR retorno IN
>
> SELECT fichas.idficha, fichas.idcliente, mclientes.nomcliente,
> fichas.fichafecha,
> fichas.idot, fichas.itemot, fichas.fichaobser,
> fichas.idruta, fichas.idhojaruta,
> fichas.aniohojaruta, ficha_tejeduria.idfamilia,
> mfamilias.nomfamil, ficha_tejeduria.iddescr,
> mdescripcion.nomdescr, mtejedoras.maqdesc,
> ficha_hilados.position, ficha_hilados.porcentaje,
> ficha_hilados.idcolor, ficha_hilados.idhilo,
> ficha_hilados.lonmaya1, ficha_hilados.lonmaya2,
> ficha_hilados.lonmaya3, ficha_hilados.idservicio,
> ficha_hilados.tension,
> mhilos.titulo_hilo, mhilos.desc_hilo, mhilos.alg_hilo,
> mhilos.nyl_hilo, mhilos.pol_hilo,
> mhilos.lic_hilo, mhilos.coc_hilo, mhilos.vis_hilo,
> mhilos.acr_hilo, mcolores.nomcolor,
> ficha_barca.idcolor as idcolor2, ficha_barca.idbarca,
> mcolores.nomcolor as nomcolor2
> FROM fichas INNER JOIN mclientes ON fichas.idcliente =
> mclientes.idcliente
> LEFT JOIN ficha_tejeduria ON fichas.idficha =
> ficha_tejeduria.idficha
> LEFT JOIN mfamilias ON ficha_tejeduria.idfamilia =
> mfamilias.idfamil
> LEFT JOIN mdescripcion ON ficha_tejeduria.iddescr =
> mdescripcion.iddescr
> LEFT JOIN mtejedoras ON ficha_tejeduria.idmaqteje =
> mtejedoras.idmaqteje
> LEFT JOIN ficha_hilados ON fichas.idficha =
> ficha_hilados.idficha
> LEFT JOIN mhilos ON ficha_hilados.idhilo = mhilos.idhilo
> LEFT JOIN mcolores ON ficha_hilados.idcolor =
> mcolores.idcolor
> LEFT JOIN ficha_barca ON fichas.idficha =
> ficha_barca.idficha
> WHERE Fichas.IdFicha = numero_ficha
> LOOP
>
> RETURN NEXT retorno;
> END LOOP;
>
> RETURN;
> END;
> $body$
> LANGUAGE 'plpgsql' VOLATILE CALLED ON NULL INPUT SECURITY INVOKER;
>
> la ejecuto y me manda un error :
> ERROR: wrong record type supplied in RETURN NEXT
> CONTEXT: PL/pgSQL function "Datos_fichas" line 27 at return next
>
> Como puedo solucionarlo ??
> Quizas no sea el lugar en donde debia crearlo.

¿ deseas retornar el resultado de esa consulta ?
¿ por qué no mejor crear una vista de esta consulta ?

>
>
> Gracias
>
> Miguel
>
>
>
>
>
>
> --
> TIP 3: Si encontraste la respuesta a tu problema, publícala, otros te lo agradecerán
>

--
_________________________________
Solo soy una mente genial en un cuerpo

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message MIGUEL CANCHAS 2007-10-03 14:30:03 RE: Mi primera funcion en POSTGRESQL
Previous Message MIGUEL CANCHAS 2007-10-03 13:35:57 Mi primera funcion en POSTGRESQL