Re: Re[2]: problema con delete from

From: "Gustavo Garay \(Lista\)" <chauria(at)gmail(dot)com>
To: <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Re[2]: problema con delete from
Date: 2007-03-05 19:08:49
Message-ID: 001201c75f59$b82ec770$6400a8c0@shi.com.py
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda


CREATE TRIGGER presupuesto_detalle_calculos
-- aqui lo tenia como BEFORE INSERT OR UPDATE OR DELETE
-- por más que en la funcion solo hacia calculo si era un INSERT
BEFORE INSERT
ON pres_detalle
FOR EACH ROW
EXECUTE PROCEDURE presupuesto_detalle_calculos();

CREATE OR REPLACE FUNCTION presupuesto_detalle_calculos()
RETURNS "trigger" AS
$BODY$
BEGIN
-- nuevo artículo, hace cálculos y actualiza presupuesto
IF TG_OP = 'INSERT' THEN
NEW.pr_subtotal = NEW.pr_cantidad * NEW.pr_pventa;
NEW.pr_impuesto = (NEW.pr_subtotal * NEW.pr_porc_impuesto) / 100;
NEW.pr_pfinal = (NEW.pr_subtotal - NEW.pr_descuento) +
NEW.pr_impuesto;
END IF;
RETURN NEW;
END;
$BODY$
LANGUAGE 'plpgsql' VOLATILE;

para evitar el problema, debería de incluir el RETURN NEW dentro
del IF?

Mirando la funcion mas bien seria bueno llamarlos solo cuando se inserta no
cuando se modifica y se borra tambien

Lo correcto seria hacer que la funcion haga lo mismo cuando se modifica y
llamar el trigger en es dos casos

Gustavo Garay

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Juan Carlos Badillo Goy 2007-03-05 19:46:40 Ayuda con scripts
Previous Message Ever Daniel Barreto Rojas 2007-03-05 18:36:48 Re[2]: problema con delete from