Dúvida com codigo controle de estoque

Delphi

20/05/2004

Olá amigos estou com a seguinte duvida no codigo abaixo: Estou desenvolvendo um sistema de controle de estoque e o codigo abaixo é do form de venda ele executa todos os passos só que ele não limpa o dbgrid e fica acumulando os totais ao inves de limpar os campos de grid para nova venda como resolver esse problema? Obrigado!!
Dm.tbLdetped.First;
while not DM.tbLdetped.Eof do
begin
DM.tbLproduto.Locate(´CodPro´,DM.tbLdetpedcodpro.Value , []);
if DM.tbLdetpedbaixa.Value <> true then
begin
DM.tbLproduto.Edit;
DM.tbLprodutoquantEst.value:= DM.tbLprodutoquantEst.Value -
DM.tbLdetpedquantidade.Value;
DM.tbLproduto.Post;
DM.tbLdetped.Edit;
DM.tbLdetpedbaixa.Value := true;
DM.tbLdetped.Post;

end;
DM.tbLdetped.next;
end;


Cláudiogyn

Cláudiogyn

Curtidas 0

Respostas

Ronaldo.cutu

Ronaldo.cutu

20/05/2004

pelo que entendi voce quer que limpe o dbgrid que está ligado ao DM.tbLdetpedcodpro
uma ideia é vai ter que criar um campo para verificar se o pedido ja foi faturado ou não e filtra-lo apos a baixa no estoque


GOSTEI 0
Mokado

Mokado

20/05/2004

8) Caro amigo, em primeiro luga, não entendi dieito o teu codigo, mas é importante lembar que vc deve confeir em qual data source o seu dbgrid ta ligado e qual quey ou table o seu data source esta ligado. Se vc estiver deixando item em uma query ou table que esta relacionada a um data souce e que por sua vez esta relacionado com o dbgrid, esses itens vao aparecer no dbgrid. Não sei se isso resolve teu problema mas qualquer dúvida entre em contato novamente.


GOSTEI 0
Cláudiogyn

Cláudiogyn

20/05/2004

Mokato, realmente ele esta ligado a um data source e uma table tbldetped e como faço pra não aparecer no grid???


GOSTEI 0
Dpinho

Dpinho

20/05/2004

Olá amigos estou com a seguinte duvida no codigo abaixo: Estou desenvolvendo um sistema de controle de estoque e o codigo abaixo é do form de venda ele executa todos os passos só que ele não limpa o dbgrid e fica acumulando os totais ao inves de limpar os campos de grid para nova venda como resolver esse problema? Obrigado!! Dm.tbLdetped.First; while not DM.tbLdetped.Eof do begin DM.tbLproduto.Locate(´CodPro´,DM.tbLdetpedcodpro.Value , []); if DM.tbLdetpedbaixa.Value <> true then begin DM.tbLproduto.Edit; DM.tbLprodutoquantEst.value:= DM.tbLprodutoquantEst.Value - DM.tbLdetpedquantidade.Value; DM.tbLproduto.Post; DM.tbLdetped.Edit; DM.tbLdetpedbaixa.Value := true; DM.tbLdetped.Post; end; DM.tbLdetped.next; end;



Veja o Relacionamento das tabelas


GOSTEI 0
Cláudiogyn

Cláudiogyn

20/05/2004

Tem como colocar um comando tipo dbgrid1.insert ou coisa parecido???


GOSTEI 0
Mokado

Mokado

20/05/2004

Cara, no caso de faturamento de produtos por exemplo, vc deve usar uma tabela auxiliar ou query auxiliar para que acada faturamento vc limpe o conteudo da tabela ou query!!! Entende? Pois se nao tiver nada na tabela ou query, nao vai aparecer nada, mas vc pode usar tb a propriedade filter da query ou tabela, colocando um criterio(como na clausula where do sql) no campo filter e depois habilitar a propriedade filtred. Com isso vc filtra o que quer que apareça no grid sem ter que apagar seu conteudo!!!


GOSTEI 0
POSTAR