Fórum Ajuda co nm Trigger #55576
23/03/2006
0
To fazendo assim no IBEXPERT , mas confesso que sou fraquinho para isto
CREATE TRIGGER DESCRICAO_AI0 FOR DESCRICAO ACTIVE AFTER INSERT POSITION 0 AS begin update produto set Produto.saldo=Produto.saldo - :qtdevenda; where Produto.cod_produto= :icodProduto; /* Trigger text */ end
Ta tudo errado , pois como eu disse antes sou fraquinho para isto... :cry:
Assim ao Gravar Produto = 1 Qutantidade = 5 , automaticamente no D a se a baixa no estoque da Tabela PRODUTOS...
Muito obrigado
Marco Salles
Curtir tópico
+ 0Posts
23/03/2006
Marco Salles
Não sei se a tecnica esta errada , mas fiz e assim e funfa
CREATE TRIGGER DESCRICAO_AI0 FOR DESCRICAO ACTIVE AFTER INSERT POSITION 0 AS begin update produto set PRODUTO.saldo= PRODUTO.saldo - DESCRICAO.quantidade where PRODUTO.cod_produto=DESCRICAO.cod_produto; /* Trigger text */ end
Gostei + 0
24/03/2006
Sremulador
CREATE TRIGGER DESCRICAO_AI0 FOR DESCRICAO
ACTIVE AFTER INSERT POSITION 0
AS
begin
update produto set
saldo=saldo - new.quantidade
where
cod_produto=new.cod_produto;
end
Gostei + 0
25/03/2006
Marco Salles
[b:58b79d558f]mas quem é este new.quantidade ??? com o banco ira reconhecer este valor ????[/b:58b79d558f]
Este saldo que voce esta se referindo é o saldo do campo da tabela Produto ???
Não precisa colocar Produto.Saldo nas istruçoes ???
É com se fosse o With do delphi :::
Gostei + 0
25/03/2006
Edilcimar
Gostei + 0
27/03/2006
Martins
[b:b79db9db38]mas quem é este new.quantidade ??? com o banco ira reconhecer este valor ????[/b:b79db9db38]
Este saldo que voce esta se referindo é o saldo do campo da tabela Produto ???
Não precisa colocar Produto.Saldo nas istruçoes ???
É com se fosse o With do delphi :::[/quote:b79db9db38]
[b:b79db9db38]Marco[/b:b79db9db38], tanto a palavra [b:b79db9db38]New[/b:b79db9db38] quanto [b:b79db9db38]Old[/b:b79db9db38] são variáveis.
[b:b79db9db38]Leia os trechos:[/b:b79db9db38]
CREATE TRIGGER SAVE_SALARY_CHANGE FOR EMPLOYEE ACTIVE AFTER UPDATE POSITION 0 AS BEGIN IF (old.salary <> new.salary) THEN INSERT INTO salary_history (emp_no, change_date, updater_id, old_salary, percent_change) VALUES ( old.emp_no, ´NOW´, user, old.salary, (new.salary - old.salary) * 100 / old.salary); END
Boa sorte e manda ver na SQL.
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)