[firebase-br] Trigger
ibestvip
zottissistemas em ibestvip.com.br
Seg Nov 6 11:34:51 -03 2006
Eu uso assim:
espero que esse exemplo te ajude.
SET TERM ^ ;
CREATE TRIGGER TG_SOMA_CREDITO FOR CREDITOS
ACTIVE AFTER INSERT OR UPDATE OR DELETE POSITION 0
AS
begin
if (inserting) then
execute procedure sp_soma_credito(new.contano) ;
else
if ((deleting) or (updating)) then
execute procedure sp_soma_credito(Old.contano) ;
end
SET TERM ; ^
CREATE PROCEDURE SP_SOMA_CREDITO (
CONTA_NO INTEGER)
AS
BEGIN
EXIT;
END^
SET TERM ^ ;
ALTER PROCEDURE SP_SOMA_CREDITO (
CONTA_NO INTEGER)
AS
DECLARE VARIABLE TOTAL_PAGO NUMERIC(15,2);
begin
SELECT SUM(Valor)
FROM creditos
WHERE CREDITOS.contano =:conta_no
INTO :total_pago;
if (:total_pago is null) then Total_pago = 0;
update ctarec
set totalpago = :total_pago
where contano = :conta_no;
SUSPEND;
end
^
SET TERM ; ^
Mais detalhes sobre a lista de discussão lista