Fórum Trigger - Problemas #175909
19/08/2003
0
CREATE TRIGGER VOLTA_ESTOQUE FOR NOTA ACTIVE AFTER DELETE POSITION 0 AS Declare variable CODCUPOM varchar(10); Declare variable CODPROD integer; Declare variable QTD Numeric(4,3); begin FOR SELECT I.CODCUPOM, I.QTD, I.CODPROD FROM ITEM I WHERE I.CODCUPOM = NOTA.CODNOTA INTO :CODCUPOM, :QTD, :CODPROD DO BEGIN UPDATE PRODUTOS E SET ESTOQUE = (ESTOQUE + :QTD) WHERE E.CODPROD = :CODPROD; DELETE FROM ITEM I WHERE I.CODCUPOM = NOTA.CODNOTA; END SUSPEND; end
Erro:
[b:0469efb30e]Invalid token.
Dynamic SQL Error.
SQL error code = -104.
Token unknown.
RETURN. [/b:0469efb30e]
=(
Falow
Fer
Curtir tópico
+ 0Posts
19/08/2003
Abueno_silva
- troque as referências de NOTA por OLD;
- retire o delete da tabela itens do loop do for (se não ele vai tentar dar delete toda vez que ler um item);
[]´s
Gostei + 0
19/08/2003
Fer
mas valeuuuuu =)
Gostei + 0
19/08/2003
Abueno_silva
Ex.:
set term ^ ;
CREATE TRIGGER
....
set term ; ^
Isso atrapalha na criação, porque se não fizer a inversão de terminador, o IB/FB vai entender que o primeiro ; do código do trigger é o final do comando CREATE TRIGGER, então dá pau.
[]´s
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)