RES: [firebase-br] TRIGGER ALTERANDO O CODIGO DO PRODUTO NAUM AQUANTIDADE

Ton hevertonc em hotmail.com
Seg Nov 7 17:19:42 -03 2005


no before da tabela PEDIDO
AS
begin
  IF (INSERTING) THEN
     UPDATE produtos
     SET ESTOQUE = ESTOQUE - NEW.quantidade
     WHERE COD_PRODUTO = NEW.cod_produto;
  ELSE
  IF (DELETING) THEN
     UPDATE PRODUTOS
     SET ESTOQUE = ESTOQUE + quantidade
     WHERE COD_PRODUTO = OLD.cod_produto;
  ELSE
  IF (UPDATING) THEN BEGIN
     UPDATE PRODUTOS
--->     SET COD_PRODUTO = ESTOQUE - OLD.quantidade  -- Seu erro está aki...
     WHERE cod_produto = OLD.cod_produto;

     UPDATE PRODUTOS
     SET ESTOQUE = ESTOQUE + NEW.quantidade
     WHERE COD_PRODUTO = NEW.cod_produto;
   END
end

        Ton
Analista de Sistemas
 DotCom Informática

"A informação não é um produto,
mas sim a matéria prima." (Ton)

-----Mensagem original-----
De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
nome de Cesar
Enviada em: segunda-feira, 7 de novembro de 2005 16:56
Para: FireBase
Assunto: [firebase-br] TRIGGER ALTERANDO O CODIGO DO PRODUTO NAUM
AQUANTIDADE

Tenho uma trigger que serve para atualizar o estoque..
ela esta funcionando certinho na hora que estou incluindo ...e quando salvo 
blz.
mais quando eu vou mandar alterar..ela esta alterando o codigo do produto e 
naum a quantidade.
alguem pode me ajudar??
a mina trigger esta assim
no before da tabela PEDIDO
AS
begin
  IF (INSERTING) THEN
     UPDATE produtos
     SET ESTOQUE = ESTOQUE - NEW.quantidade
     WHERE COD_PRODUTO = NEW.cod_produto;
  ELSE
  IF (DELETING) THEN
     UPDATE PRODUTOS
     SET ESTOQUE = ESTOQUE + quantidade
     WHERE COD_PRODUTO = OLD.cod_produto;
  ELSE
  IF (UPDATING) THEN BEGIN
     UPDATE PRODUTOS
     SET COD_PRODUTO = ESTOQUE - OLD.quantidade
     WHERE cod_produto = OLD.cod_produto;

     UPDATE PRODUTOS
     SET ESTOQUE = ESTOQUE + NEW.quantidade
     WHERE COD_PRODUTO = NEW.cod_produto;
   END
end 


	

	
		
_______________________________________________________ 
Yahoo! Acesso Grátis: Internet rápida e grátis. 
Instale o discador agora!
http://br.acesso.yahoo.com/



______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa




Mais detalhes sobre a lista de discussão lista