[firebase-br] Trigger com Inclusão ou Atualização
Roberto - Sui Generis
roberto em suigenerisinf.com.br
Qui Jul 7 15:03:53 -03 2005
Estou querendo fazer uma Trigger para guardar o Saldo do Produto na Tabela SALDO_ESTOQUE
mas na Linha do "Insert Into" (última linha), está fazendo a inclusão dos registros sem parar, ou melhor, está entrando em loop (laço).... O que está faltando ???
CREATE TRIGGER PRODUTOS_AIU0 FOR PRODUTOS
ACTIVE AFTER INSERT OR UPDATE POSITION 0
AS
declare variable DataSaldo date;
declare variable Produto Varchar(20);
begin
for Select DATA, ITEM_ID from SALDO_ESTOQUE
where ((DATA = CURRENT_DATE) and (ITEM_ID = NEW.ITEM_ID))
into :DataSaldo, :Produto do
begin
if (Produto = NEW.ITEM_ID) then
begin
update saldo_estoque set SALDO = SALDO + (NEW.EST_ATUAL - OLD.EST_ATUAL);
end
else
begin
insert into saldo_estoque (DATA,ITEM_ID,SALDO) values(CURRENT_DATE, NEW.ITEM_ID, NEW.EST_ATUAL - OLD.EST_ATUAL);
end
end
end
[]'s
Roberto Krug
Sui Generis Informática
Novo Hamburgo - RS - Brasil
roberto em suigenerisinf.com.br
Interbase / Firebird DBA
Delphi 7 - IBX 7.08
Mais detalhes sobre a lista de discussão lista