Olá Mestres, necesito de ajuda.
Minha situação:
Possuo um fomulário principal não vinculado à tabela alguma. Neste formulário existe um subformulário vinculado à tabela tblReposição.
Neste subformulário existe 4 campos, DtReposição(Valor Padrão = Data()), Produto(Combox que faz uma busca na tblProdutos por Produto e Apresentação), Apresentação e Quantidade.
O que pretendo é que quando o usuário selecionar um Produto o sistema verifique se este produto já foi selecionado na DtReposição.
Se sim oferece ao usuário a possibilidade de mante-lo e se o usuário optar por sim após a atualização de Produto o campo Apresentação receba o valor da coluna 2 e o cursor vá para o campo Quantidade. Se Não, o registro seja excluído.
Por fim, se o produto não tenha sido selecionado na data DtReposição após atualização da combox Produto o campo Apresentação seja preenchido e o cursor remetido para o campo Quantidade.
Já tentei o seguinte:
No evento Após Atualizar da combox Produto inseri:
Private Sub Produto_AfterUpdate()
If IsNull(DLookup("Produto", "tblReposição", "[DtReposição] = " & Me.DtReposição & "")) Then
'If MsgBox("O Produto ... " & Me!Produto.Column(1) & " ... já foi reposto nesta data! " & Chr(13) & "Você pretende adicionar mais este ítem ? ", vbYesNo, " InfoBasic Smart System") = 6 Then
Me.Apresentação=Me.Produto.Column(2)
Me.Quantidade.SetFocus
Else
'MsgBox "O Produto ... " & Me!Produto.Column(1) & " ... já foi reposto nesta data! O evento será cancelado.", vbOKOnly, Me.Caption
'Me.Undo
'DoCmd.CancelEvent
End If
End If
End Sub
A coisa até funciona direitinho contudo se o usuário seleciona um outro produto ainda não constante nesta data toda a situação acima se repete.
Já queimei bilhões de neurônios e não consigo sair dessa arapuca.
Para dar uma idéia melhor, segue a imagem do formulário.
Abraços, WSenna
Minha situação:
Possuo um fomulário principal não vinculado à tabela alguma. Neste formulário existe um subformulário vinculado à tabela tblReposição.
Neste subformulário existe 4 campos, DtReposição(Valor Padrão = Data()), Produto(Combox que faz uma busca na tblProdutos por Produto e Apresentação), Apresentação e Quantidade.
O que pretendo é que quando o usuário selecionar um Produto o sistema verifique se este produto já foi selecionado na DtReposição.
Se sim oferece ao usuário a possibilidade de mante-lo e se o usuário optar por sim após a atualização de Produto o campo Apresentação receba o valor da coluna 2 e o cursor vá para o campo Quantidade. Se Não, o registro seja excluído.
Por fim, se o produto não tenha sido selecionado na data DtReposição após atualização da combox Produto o campo Apresentação seja preenchido e o cursor remetido para o campo Quantidade.
Já tentei o seguinte:
No evento Após Atualizar da combox Produto inseri:
Private Sub Produto_AfterUpdate()
If IsNull(DLookup("Produto", "tblReposição", "[DtReposição] = " & Me.DtReposição & "")) Then
'If MsgBox("O Produto ... " & Me!Produto.Column(1) & " ... já foi reposto nesta data! " & Chr(13) & "Você pretende adicionar mais este ítem ? ", vbYesNo, " InfoBasic Smart System") = 6 Then
Me.Apresentação=Me.Produto.Column(2)
Me.Quantidade.SetFocus
Else
'MsgBox "O Produto ... " & Me!Produto.Column(1) & " ... já foi reposto nesta data! O evento será cancelado.", vbOKOnly, Me.Caption
'Me.Undo
'DoCmd.CancelEvent
End If
End If
End Sub
A coisa até funciona direitinho contudo se o usuário seleciona um outro produto ainda não constante nesta data toda a situação acima se repete.
Já queimei bilhões de neurônios e não consigo sair dessa arapuca.
Para dar uma idéia melhor, segue a imagem do formulário.
Abraços, WSenna
Última edição por wsenna em 16/10/2014, 13:27, editado 1 vez(es)