Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

gamefe

Subtração e update no banco

Recommended Posts

Pessoal, mais uma vez recorro a ajuda de vocês.

 

Tenho 3 tabelas, uma de produtos, juntamente com o estoque, outra das vendas temporárias e outra das vendas definitivas.

 

Quando eu entro no cadastro de determinado cliente para tirar uma venda, ela vai para a venda temporária. Quando eu confirmo a venda, ela vai para a tabela definitiva.

 

Estou utilizando o seguinte código:

 

'Copia dos produtos da temporaria para a pedidos
vDeletar = "INSERT INTO pedidos_poli SELECT idcompra, clienteid, produto, quantidade, preco, data, prodcod FROM pedidos_poli_temp WHERE clienteid='"&clienteid&"' "
Set vRetorno = vConexao2.Execute(vDeletar)

'Coloca a forma de pagamento nos itens pedidos do cliente
vDeletar = "UPDATE pedidos SET formapagamento = '"&forma&"' WHERE clienteid='"&clienteid&"' "
Set vRetorno = vConexao2.Execute(vDeletar)

'Deleta o pedido do cliente da tabela temporaria
vDeletar = "DELETE FROM pedidos_poli_temp WHERE clienteid='"&clienteid&"' "
Set vRetorno = vConexao2.Execute(vDeletar)

 

Só que onde está o UPDATE, eu quero que ele pegue a quantidade que foi inserida na tabela de pedidos definitiva e subtraia da tabela de produtos.

 

Como poderia ser feita esta subtração com o banco mysql?

 

Seria algo + ou - assim?

vDeletar = "UPDATE produtos_poli.prodcod, produtos_poli.quant_disp, pedidos_poli.prodcod, pedidos_poli.quantidade SET produtos_poli.quant_disp - pedidos_poli.quantidade WHERE clienteid='"&clienteid&"' "

 

Alguém poderia me ajudar? Estou totalmente perdido com esta parte do código.

 

Valeu!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Normalmente faço assim:

 

qtdv=Request.form("qtd")
sql="SELECT * FROM produtos WHERE cod='"&cod&"'"
set rs = con.execute(sql)
DO WHILE NOT rs.EOF
'...
'algumas ações aqui
'...

qtdv = rs("quantidade")
qtdnv=qtdv+(-1*qtade)
sql2="Update produtos SET quantidade='"&qtdnv&"' where cod="&rs("cod")
set rs2 = conn.execute(sql2)
'...
rs.movenext
loop

 

Acho que tem como subtrair na query sql, se não me engano vi um post assim cerca de uma ou duas semanas atrás na sessão de mysql aqui do forum, mas não estou certo.

 

A forma como postei acima funciona num sistema que fiz, e até hoje o cliente não reclamou.

Como funciona numa intranet, os acessos não são muitos para saber se essa forma decrementa o desempenho do servidor ou não.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.