Fórum Atualizar estoque #364034

17/09/2008

0

Tenho uma IBSQL para atualizar Vendas, assim:

update produto
set venda =
(select qtd from view_itens_venda where produto.cod_prod = view_itens_venda.cod_prod)


Tenho outra IBSQL para atualizar Estoque, assim:

update produto
set qtd = (select (pp.entrada-(pp.devolucao+pp.venda)) from produto pp where pp.cod_prod = :pCodProd)
where produto.cod_prod = :pCodProd

No formulário de Vendas, no botão Confirma, tenho o seguinte código no final dos códigos das vendas:

DM.TbProduto.Open;
DM.TbProduto.Edit;
with DM.IBSQL_atualiza_venda do
begin
Close;
DM.TbProdutoVENDA.Value:= DM.IBQry_itens_vendaQTD.AsInteger;
ExecQuery;
end;

with DM.IBSQL_atualiza_estoque do
begin
Close;
ParamByName(´pCodProd´).AsInteger := codProduto;
ExecQuery;
end;

DM.TbProduto.Post;
DM.TR.CommitRetaining;
DM.TbProduto.Close;
dm.TbProduto.open;
end

O problema é as atualizações do estoque só está sendo feito depois da próxima venda. Onde devo colocar esses códigos?

Ou alguém tem uma outra dica? Obrigado.


Jbsprofessor

Jbsprofessor

Responder

Posts

18/09/2008

Rodolfo.pirolo

jbsprofessor,

Normalmente utilizo esta rotina de atualização do estoque no próprio banco de dados através das triggers.

Detalhe: utilizo firebird, mas acredito que com o interbase seja igual.

Qualquer dúvida, estou a disposição.

Abraços

Rodolfo


Responder

Gostei + 0

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

Aceitar