Alow! Alow! Alow!
Tenho uma tela de vendas. Tenho em estoque 5 unidades de um determinado produto. Vários usuários estão emitindo pedido simultaneamente. Como garantir que mais de um usuário consiga "reservar" essas unidades?
Atualmente eu faço assim:
m.SaldoOk = .T.
Begin Transaction
Insert Into MovEstoque (CodProd, Qtdade) Values (m.CodProd, m.Qtdade)
Select Sum(Qtdade) As Qtdade From MovEstoque Where CodProd = m.CodProd Into Cursor Saldo
If Saldo.Qtdade < 0
m.SaldoOk = .F.
EndIf
If m.SaldoOk = .T.
End Transaction
Else
Rollback
EndIf
Está correto? Alguma sugestão...?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Rodolfo Duarte