CONTROLE DE ESTOQUE
Estou fazendo um controle de estoque onde armazeno as vendas não realizada em uma tabela VENDA_N_REALI.
Não estou conseguindo da baixa na quantidade dos itens da tabela PRODUTO quando realizo uma venda.
As vezes ficam varios itens na tabela VENDA_N_REALI e quando clico no command, tem que da baixa nas quantidades da tabela produto.
Como comparar os itens pelo codigo do produto entre as tabelas VENDA_N_REALI e a PRODUTO e depois da baixa nas quantidades da tabela PRODUTO?
Estou tentando fazer assim:
Uso banco de dados access 2003 e a conexão ADO.
Grato
Não estou conseguindo da baixa na quantidade dos itens da tabela PRODUTO quando realizo uma venda.
As vezes ficam varios itens na tabela VENDA_N_REALI e quando clico no command, tem que da baixa nas quantidades da tabela produto.
Como comparar os itens pelo codigo do produto entre as tabelas VENDA_N_REALI e a PRODUTO e depois da baixa nas quantidades da tabela PRODUTO?
Estou tentando fazer assim:
Uso banco de dados access 2003 e a conexão ADO.
Private Sub Command1_Click()
Dim data As Date
Dim vMaior As Integer
rs.MoveFirst
rs.Find "CODIGO = & ins!Produto" 'aqui tenho fazer a comparação entre duas tabelas
If rs.EOF = True Then
MsgBox "Produto não encontrado encontrado"
txtcodProduto.Text = ""
txtQtde.Text = ""
txtcodProduto.SetFocus
Exit Sub
Else
vMaior = txtQtde.Text
If vMaior > rs!estoque Then
MsgBox "A quantidade de saida é maior que a do estoque", vbCritical, "ATENÇÃO"
txtcodProduto.Text = ""
txtQtde.Text = ""
txtcodProduto.SetFocus
Else
'Aqui armazeno a venda em outra tabela chamada VENDA
rs!estoque = rs!estoque - ins!QTDE ' Aqui tenho que da baixa na tabela poduto
rs.update
rsant.AddNew
rsant!id = txtID.Text
rsant!Produto = rs!Produto
rsant!CODIGO = txtcodProduto.Text
rsant!data = Date
rsant!VALORTOTAL = (rs!VALORVENDA * txtQtde.Text)
rsant.update
GerarID
txtvenda.Text = IIf(ins!VALORTOTAL = "", "0", Format(ins!VALORTOTAL, "#,##0.00"))
MsgBox "Estoque Atualizado!"
txtcodProduto.Text = ""
txtQtde.Text = ""
txtcodProduto.SetFocus
txtvendadia.Text = Format(Soma_Colunas(ins, "valortotal"))
MontarGrid
End If
End If
End Sub
Grato
Olá Antonio,
O produto está sendo encontrado ? Não sei se estou errado, mas eu acho q a linha q vc faz a busca (Find) está com um erro. Veja abaixo:
rs.Find "CODIGO = & ins!Produto"
qdo. eu acho q deveria ser assim:
rs.Find "CODIGO = " & ins!Produto
Outra questão: O campo código é numérico ou texto ?
Espero poder tê-lo ajudado.
Boa sorte...
Daniel
O produto está sendo encontrado ? Não sei se estou errado, mas eu acho q a linha q vc faz a busca (Find) está com um erro. Veja abaixo:
rs.Find "CODIGO = & ins!Produto"
qdo. eu acho q deveria ser assim:
rs.Find "CODIGO = " & ins!Produto
Outra questão: O campo código é numérico ou texto ?
Espero poder tê-lo ajudado.
Boa sorte...
Daniel
tipow eu uso assim
SQL = "UPDATE PRODUTOS INNER JOIN CUPOM ON PRODUTOS.CODPRODUTO = CUPOM.itemcode SET PRODUTOS.ESTOQUE = PRODUTOS.ESTOQUE - CUPOM.qty WHERE (((PRODUTOS.CODPRODUTO) = CUPOM.itemcode))"
bd.Execute (SQL)
Daniel o produto não está sendo encontrado. Irei testa a maneira que vc passou e estou usando o campo do banco de dados como texto.
Foxman, usando essa instrução SQL, vai ter que fazer um loop para que os dados da tabela produto seja atualizado?
Foxman, usando essa instrução SQL, vai ter que fazer um loop para que os dados da tabela produto seja atualizado?
Olá Antonio,
Então vc deverá colocar da seguinte maneira:
rs.Find "CODIGO = '" & ins!Produto & "'"
Boa Sorte...
Então vc deverá colocar da seguinte maneira:
rs.Find "CODIGO = '" & ins!Produto & "'"
Boa Sorte...
naum....ele ja ta atualizando.....depende de como eh feito o lançamento geralmente esse codigo eh colocado no final da transação......
Neste exemplo tenho uma tabela temporaria....chamada cupom....nela armazeno todos os lançamentos de uma venda.....apenas uma venda......apos a venda ser concluida eu excluo todos os registro da tabela cupom.
Sendo assim....vc naum tem problemas com possives duplicidade de lançamento....
quaquer coisa posta ae
Neste exemplo tenho uma tabela temporaria....chamada cupom....nela armazeno todos os lançamentos de uma venda.....apenas uma venda......apos a venda ser concluida eu excluo todos os registro da tabela cupom.
Sendo assim....vc naum tem problemas com possives duplicidade de lançamento....
quaquer coisa posta ae
Valeu rapazes, pena que eu não posso pontuar os dois.
Tópico encerrado , respostas não são mais permitidas