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/
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? |