Ver Mensaje Individual
  #3 (permalink)  
Antiguo 03/12/2009, 08:48
SalomonSab
 
Fecha de Ingreso: noviembre-2006
Mensajes: 227
Antigüedad: 17 años, 6 meses
Puntos: 6
Respuesta: Restar Stock cuando se haga una venta

Mira yo te recomiendo que antes de agregar salidas a tu Grilla te haga la comparación de cuantos tienes, si es igual a O que no te agregue nada te marque un error. Si existen entonces te los pueda agregar a tu grilla. y con respecto a agregar ventas y restarlos solo tendrias que agregar una linea mas y con eso te funciona tu programa.

te quedaria mas o menos asi

Código:
For fila = 1 To Grid1.Rows - 1
   CnN.Execute "INSERT INTO ventas(Cliente, CantidadVendida, Detalle, Precio , PrecioTotal, NumeroFactura, Codigo, Fecha, Unidad) VALUES ('" & _
                Grid1.TextMatrix(fila, 0) & "', '" & Grid1.TextMatrix(fila, 1) & "', '" & _
                Grid1.TextMatrix(fila, 2) & "', '" & Grid1.TextMatrix(fila, 3) & "',  '" & _
                Grid1.TextMatrix(fila, 4) & "', '" & Grid1.TextMatrix(fila, 5) & "', '" & Grid1.TextMatrix(fila, 6) & "', '" & Grid1.TextMatrix(fila, 7) & "', '" & Grid1.TextMatrix(fila, 8) & "')"

'Aqui restamos al stock
Cnn.Execute "UPDATE stock Set cantidad  = cantidad  - " & val(Grid1.TextMatrix(fila, 1)) & " WHERE codigo = '" & Grid1.TextMatrix(fila, 6) & "'"

Next fila
Cada vez que recorra el ciclo agrega los datos a tu tabla ventas pero a la vez te actualiza el stock de tu articulo.

por eso te decia antes de agregarlo a tu grilla primero revisa si hay en existencias agregas si no hay no agregas. asi de facil

Espero te sirva cualquier cosa aqui estamos. buen dia