El rsTemp solo acepta productos con Stock>0 y/o cuando la cantidad solicitada este disponible.
Mi pregunta es que como hago si segundos antes otro usuario ya vendio todos los productos del codprod=152 por ejemplo y dejo el stock en zero, acaso debo hacer otra conprobacion antes de actualizar el stock del bucle o debo actualzar el stock antes de realizar la venta y si se cancela volver a agregarle dicha cantidades?
Código:
cnx.BeginTrans 'GRABAR ENCABEZADO cnx.Execute "INSERT INTO Factura VALUES('" & txtFactura.Text & "','" & txtFecha & "','" & Trim(txtCliente) & "','" & Trim(txtEmpleado) & "','" & Val(txtTotal) & "',NULL)" 'GRABAR DETALLE o LINEAS DE LA VENTA rsTemp.MoveFirst Do While Not rsTemp.EOF cnx.Execute "INSERT INTO DetFactura VALUES('" & txtFactura & "','" & rsTemp.Fields("CodProd") & "','" & rsTemp.Fields("PrecioVenta") & "','" & rsTemp.Fields("Cantidad") & "','" & rsTemp.Fields("subtotal") & "')" 'Aqui restamos el stock cnx.Execute "UPDATE producto SET stockActual=stockActual-'" & rsTemp.Fields("Cantidad") & "' WHERE codprod='" & rsTemp.Fields("CodProd") & "'" rsTemp.MoveNext Loop cnx.CommitTrans