Olá!
Criei um formulário simples de cadastro de Pessoa Física/Jurídica, onde existe um campo do tipo "caixa de combinação" (cboIrPara) para navegar entre os registros existentes.
O campo cboIrPara foi vinculado ao evento AfterUpdate, da seguinte linha:
Além disso, existe um campo não acoplado, cpf_cnpj, que é alterado no Form_Current para mostrar o campo cpf ou cnpj, de acordo com o registro mostrado.
Agora o problema:
Digamos o registro id = 1 seja uma pessoa física (tipo_pessoa = 1), e o registro id = 2 seja uma pessoa jurídica (tipo_pessoa = 2).
Se eu navego do id = 1 para o id = 2 pelo cboIrPara, todos os campos são preenchidos corretamente. Todavia, se retorno do id = 2 para o id = 1, seu cpf não é preenchido.
Se eu utilizo outro método para navegar pelos registros, o problema não acontece. Exemplo:
Alguma ideia do que pode estar acontecendo? Anexei o arquivo para análise de vocês.
Obrigado!
Criei um formulário simples de cadastro de Pessoa Física/Jurídica, onde existe um campo do tipo "caixa de combinação" (cboIrPara) para navegar entre os registros existentes.
O campo cboIrPara foi vinculado ao evento AfterUpdate, da seguinte linha:
- Código:
Private Sub cboIrPara_AfterUpdate()
DoCmd.SearchForRecord , "", acFirst, "[id] = " & Str(Nz(Screen.ActiveControl, 0))
End Sub
Além disso, existe um campo não acoplado, cpf_cnpj, que é alterado no Form_Current para mostrar o campo cpf ou cnpj, de acordo com o registro mostrado.
Agora o problema:
Digamos o registro id = 1 seja uma pessoa física (tipo_pessoa = 1), e o registro id = 2 seja uma pessoa jurídica (tipo_pessoa = 2).
Se eu navego do id = 1 para o id = 2 pelo cboIrPara, todos os campos são preenchidos corretamente. Todavia, se retorno do id = 2 para o id = 1, seu cpf não é preenchido.
Se eu utilizo outro método para navegar pelos registros, o problema não acontece. Exemplo:
- Código:
Private Sub cboIrPara_AfterUpdate()
' Encontra o registro que coincide com o controle.
Dim rs As Object
Set rs = Me.Recordset.Clone
rs.FindFirst "[id] = " & Str(Nz(Screen.ActiveControl, 0))
If Not rs.EOF Then Me.Bookmark = rs.Bookmark
End Sub
Alguma ideia do que pode estar acontecendo? Anexei o arquivo para análise de vocês.
Obrigado!
- Anexos
- FU2.zip
- Você não tem permissão para fazer download dos arquivos anexados.
- (189 Kb) Baixado 6 vez(es)
Última edição por lucasrubini em 14/12/2023, 12:42, editado 1 vez(es)