Bom Dia a Todos,
Estou utilizando o código abaixo para baixar item do estoque e quando solicito uma quantidade maio que o Saldo aparece a mensagem que "saldo insuficiente". até ai está tudo Ok.
Abaixo o código:
Private Sub Quantidade_Exit(Cancel As Integer)
On Error Resume Next
Dim strQuantidade As String
'busca na tabela a quantidade de estoque existente
strQuantidade = Val(DLookup("[Quantidade]", "Produto", "[CodigoProduto] = " & Me.CodigoProduto & ""))
'se o estoque estiver a zero ou inferior a zero ou ainda se a quantidade de saida for maior que a do estoque, aborta...
If Val(strQuantidade) = 0 Or Val(strQuantidade) < 0 Or Me.Quantidade.Value > Val(strQuantidade) Then
MsgBox "Saldo insuficiente => " & Me.CodigoProduto.Column(4) & "", vbCritical
Me.Quantidade = ""
Cancel = True
Exit Sub
Else
'se tudo estiver bem, retira a quantidade da tabela
DoCmd.SetWarnings False
DoCmd.RunSQL "UPDATE Produto Set [Produto].[Quantidade] = [Produto].[Quantidade] - '" & Me.Quantidade & "' WHERE [Produto].[CodigoProduto] = " & Me.CodigoProduto & ""
DoCmd.SetWarnings True
End If
End Sub
Gostaria de fazer o seguinte para o código acima.
Em vez de aparecer a mensagem após digitar uma quantidade maior que o saldo, o mesmo cancelar toda a solicitação, isto é deletar ou seja desconsiderar aquela solicitação desde a Referencia até a Quantidade.
Veja como acontece:
Quando digito a "referencia" de um produto o vou digitar a "Quantidade" se o produto estiver zerado a mensagem de saldo Insuficiente aparece só que depois disso o frm não deixa eu mudar a referencia dando erro por isso queria que ele já desconsiderasse aquela solicitação.
Sé possível, isto é, se for mais fácil pode ser o seguinte, quando for digitado a "Referencia" e o campo "quantidade" for zero a mensagem já aparecer antes de ser selecionado.
galera o que puder desde já agradeço
abraços.
Estou utilizando o código abaixo para baixar item do estoque e quando solicito uma quantidade maio que o Saldo aparece a mensagem que "saldo insuficiente". até ai está tudo Ok.
Abaixo o código:
Private Sub Quantidade_Exit(Cancel As Integer)
On Error Resume Next
Dim strQuantidade As String
'busca na tabela a quantidade de estoque existente
strQuantidade = Val(DLookup("[Quantidade]", "Produto", "[CodigoProduto] = " & Me.CodigoProduto & ""))
'se o estoque estiver a zero ou inferior a zero ou ainda se a quantidade de saida for maior que a do estoque, aborta...
If Val(strQuantidade) = 0 Or Val(strQuantidade) < 0 Or Me.Quantidade.Value > Val(strQuantidade) Then
MsgBox "Saldo insuficiente => " & Me.CodigoProduto.Column(4) & "", vbCritical
Me.Quantidade = ""
Cancel = True
Exit Sub
Else
'se tudo estiver bem, retira a quantidade da tabela
DoCmd.SetWarnings False
DoCmd.RunSQL "UPDATE Produto Set [Produto].[Quantidade] = [Produto].[Quantidade] - '" & Me.Quantidade & "' WHERE [Produto].[CodigoProduto] = " & Me.CodigoProduto & ""
DoCmd.SetWarnings True
End If
End Sub
Gostaria de fazer o seguinte para o código acima.
Em vez de aparecer a mensagem após digitar uma quantidade maior que o saldo, o mesmo cancelar toda a solicitação, isto é deletar ou seja desconsiderar aquela solicitação desde a Referencia até a Quantidade.
Veja como acontece:
Quando digito a "referencia" de um produto o vou digitar a "Quantidade" se o produto estiver zerado a mensagem de saldo Insuficiente aparece só que depois disso o frm não deixa eu mudar a referencia dando erro por isso queria que ele já desconsiderasse aquela solicitação.
Sé possível, isto é, se for mais fácil pode ser o seguinte, quando for digitado a "Referencia" e o campo "quantidade" for zero a mensagem já aparecer antes de ser selecionado.
galera o que puder desde já agradeço
abraços.