From: | Felipe Amezquita <felmarla(at)gmail(dot)com> |
---|---|
To: | gonzalemario(at)gmail(dot)com |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | ejecutar funcion de retorno de curosr dentro de otra |
Date: | 2006-02-01 22:30:05 |
Message-ID: | bf4cfe570602011430o69447606m@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
tengo las siguiente fucnion usando cursores y necesito llamarla dentro de
otra para hacer update e insert como la ejecuto dentro de dicha funcion
CREATE OR REPLACE FUNCTION obtener_consecutivo_factura("varchar", refcursor)
RETURNS refcursor AS
$BODY$
DECLARE
existePref Numeric;
consecFac numeric;
BEGIN
existePref := existe_prefijo_consecutivo(in_pref_prefijo);
if (existePref = 0) then
raise exception 'El prefijo indicado no tiene consecutivo
automatico.';
end if;
select prefcon_numero INTO consecFac from prefijo_consecutivo where
pref_prefijo = in_pref_prefijo for update;
consecFac:= consecFac + 1;
update prefijo_consecutivo set prefcon_numero = consecFac where
pref_prefijo = in_pref_prefijo;
open $2 for select consecFac as fac_numero;
return 2;
END;
$BODY$
LANGUAGE 'plpgsql' VOLATILE;
CREATE OR REPLACE FUNCTION insertar_cuotaafi_prg("numeric", date, "numeric",
"numeric", "varchar")
RETURNS "numeric" AS
$BODY$
DECLARE
cursorConsecfactura refcursor;
consecFac factura.fac_numero%type;
tipoFactura tipo.tip_codigo%type;
codUSuario Numeric;
BEGIN
obtener_consecutivo_factura('CUA',cursorConsecFactura);
LOOP
FETCH cursorConsecFactura into consecFac;
END LOOP;
tipoFactura := get_codigo_tipo('Talonario','Facturas');
codUsuario := get_codigo_usuario(in_usuario);
insert into factura values('CUA', consecFac, in_oco_codigo_venta,
in_prg_fecha_solicitud,current_date,
in_valor_cuotaAfi, in_valor_cuotaAfi, 0,
in_valor_cuotaAfi, 0, null,
in_valor_cuotaAfi, tipoFactura, 'Ac',
null, codUsuario, null);
insert into factura_programa values('CUA', consecFac,
in_prg_codigo);
return 1;
END;
$BODY$
LANGUAGE 'plpgsql' VOLATILE;
--
Ing Sistemas y Telecomunicaciones
Luis Felipe Lopez Amezquita
3008217523 - 3162589699
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2006-02-01 22:32:48 | Re: Copia de seguridad |
Previous Message | Alvaro Herrera | 2006-02-01 22:27:44 | Re: Problema con update |