Fórum Atualizar estoque apos vendas #401883

27/05/2011

0

bom dia...tenho um sistema de vendas, porem quando faço as vendas o estoque so atualiza quando saio do sistema...ai nao pode..tem que atualizar automatico certo? bom criei a triggers para baixar o estoque e uma de devolucao(quando deletar):
 
CREATE TRIGGER `AtualizaEstoqueVenda` AFTER INSERT ON `itens2`
  FOR EACH ROW
update produtos p
set estoque = estoque - new.quantidade
where p.codprod = new.codprod;
 
CREATE TRIGGER `Atualiza_Estoque_Devolucao` AFTER DELETE ON `itens2`
  FOR EACH ROW
update produtos p
set estoque = estoque + old.quantidade
where p.codprod = old.codprod;
 
tenho um form de pesquisa de produtos na hora da venda(dentro do dbgrid - um botao chama o form ), o produto que acabei de vender ja aparece atualizado...mas na tabela de produtos nao....
 
Alguem pode me ajudar a fazer com que atualize a Tabela de produtos automaticamente...
desde ja agradeço.
 
uso delphi/mysql com componente ADO/adoquery...o adoquery usa o POST para gravar....Talvez estas triggers nao estejam corretas, favor me ajudar pois estou agarrado nesta parte,...aguardo ajuda..
Jose Maria

Jose Maria

Responder

Posts

30/07/2011

Fernando Ferreira

Olá colega eu não utilizo trigger  tenho uma tabela onde armazeno os itens vendidos e no fim da venda faço desta forma:


//---------------------- baixa no estoque ------------------------------------//
 dm.Recover.First;
  if not dm.Recover.Eof then
     repeat
     cod1:=floattostr(dm.RecoverCODIGO.value);
        if dm.Produto.Locate('codigo',cod1,[])then
            begin
               dm.Produto.edit;
               dm.ProdutoESTOQUE.Value:=dm.ProdutoESTOQUE.Value-dm.RecoverQUANTIDADE.Value;
               dm.Produto.Post;
            end;
  dm.Recover.Next;
  until dm.Recover.Eof;
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar