Re: aun con problemas en funcion que retorna un conjunto de registros

From: GABRIEL COLINA <colina_movil(at)yahoo(dot)com>
To: jeferson alvarez <jalvarez(at)renova(dot)com(dot)pe>, pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: aun con problemas en funcion que retorna un conjunto de registros
Date: 2007-02-09 01:17:05
Message-ID: 20070209011705.86363.qmail@web34715.mail.mud.yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Te di la complicada, te doy la simple, lenguaje sql

CREATE OR REPLACE FUNCTION "central"."fnc_v_ubicacion_articulo" (varchar) RETURNS SETOF "central"."v_ubicacion_articulo" AS
$body$
select * from central.v_ubicacion_articulo where id_articulo = $1 order by deposito,ubicacion
$body$
LANGUAGE 'sql' VOLATILE RETURNS NULL ON NULL INPUT SECURITY INVOKER;

jeferson alvarez <jalvarez(at)renova(dot)com(dot)pe> escribió:
la intension al final sera realizar varia intrucciones y devolver un
conjunto de registro pero hasata donde esta la funcion me sale el error
que adjunto abajo:
ademas tengo una pregunta solo se puede dovolver conjunto de registros
atraves de cursores, setof records con plpgsql o hay otra forma mas
directa donde me devuelva el conjunto sintener que hacer un loop o
cursor y ademas realizar varias instrucciones en la misma funcion clareo
siempre con plpgsql lo que pasa que anunsoy muy novato en esto estube
buscado info y probe varias cosas pero siempre el resultado es el mismo
error y mas erroresalguien que me de una luz

CREATE OR REPLACE FUNCTION alm_t_detalle_Eliminar(ialdt_ch_id
char(50),ialdt_in_orden int4)
RETURNS SETOF Type_alm_t_detalle_Eliminar_obtener AS
$BODY$
DECLARE
resultado record;
BEGIN
delete from alm_t_detalle where aldt_ch_id=$1 and aldt_in_orden=$2;

create temp sequence OrdenItem;

select into resultado nextval('OrdenItem') as
orden,td.arti_in_id,rtrim(a.arti_vc_descripcion) as arti_vc_descripcion,
rtrim(c.conc_vc_desc) as
conc_vc_desc,td.aldt_do_cantidad,td.aldt_do_valor_unitario,

td.aldt_do_subtotal,td.aldt_ch_id,td.aldt_in_idcab,td.aldt_in_iddet,
td.aldt_ch_doc_corre
from alm_t_detalle td
inner join sgc_m_articulo a on
td.arti_in_id = a.arti_in_id
INNER JOIN sgc_m_conceptos C ON
c.conc_ch_codigo=a.arti_ch_und and c.conc_ch_tipo='UMD'
where aldt_ch_id=$1;
if not found then
return;
end if;

RETURN NEXT resultado;
--drop sequence OrdenItem;
END;
$BODY$
LANGUAGE 'plpgsql' VOLATILE CALLED ON NULL INPUT SECURITY INVOKER;
---------------------------------------------------------------------------------------------------------------------------------------

---------------------------(fin del mensaje)---------------------------
TIP 8: explain analyze es tu amigo

__________________________________________________
Correo Yahoo!
Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
Regístrate ya - http://correo.espanol.yahoo.com/

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message jeferson alvarez 2007-02-09 01:35:54 Re: aun con problemas en funcion que retorna un conjunto de registros
Previous Message GABRIEL COLINA 2007-02-09 01:08:33 Re: lista de definicion de columna ¿que es?