Problemas sincronización en formulario
Tengo un formulario con campos de dos tablas diferentes (relacionadas), el primer campo del formulario es NIF, tengo una rutina asociada a ese campo que hace de buscador por ese campo, el problema es que al introducir un NIF, en primera instancia, sólo me aparecen los datos de la tabla principal, tengo que "actualizar todo" para que me aparezcan los datos en los campos de la tabla secundaria.
No sé si el problema es de la rutina del buscador o de origen del registro del formulario.
Te detallo la rutina del buscador, por si te da una pista del problema que planteo.
Option Compare Database
Dim i As Integer
Private Sub Form_Current()
Me.Controls("TELÉFONO").Enabled = False
Me.Controls("MÓVIL").Enabled = False
Me.Controls("FAX").Enabled = False
Me.Controls("OBS").Enabled = False
End Sub
Private Sub NIF_AfterUpdate()
Dim BUSCAR As String
Dim CriterioBusqueda As String
Dim rsc As DAO.Recordset
Set rsc = Me.RecordsetClone 'Recorremos la tabla cliente
BUSCAR = Me.NIF.Value
CriterioBusqueda = "[NIF]=" & "'" & BUSCAR & "'"
'Comprobamos si existe el Código Cliente
If DCount("NIF", "attpublico", CriterioBusqueda) > 0 Then
Me.Undo 'limpiamos el campo
'Si lo encontramos un mensaje
If MsgBox("Encontrado " _
& BUSCAR & vbCrLf & _
"Desea modificarlo", vbYesNo + vbInformation _
, "BUSCAR") = vbYes Then
'Nos movemos al registro especificado _
y desbloquemos todos los campos
rsc.FindFirst CriterioBusqueda
Me.Bookmark = rsc.Bookmark
Me.Controls("TELÉFONO").Enabled = True
Me.Controls("MÓVIL").Enabled = True
Me.Controls("FAX").Enabled = True
Me.Controls("OBS").Enabled = True
Else 'De elegir NO solamente nos movemos
rsc.FindFirst CriterioBusqueda
Me.Bookmark = rsc.Bookmark
End If
Set rsc = Nothing 'Cerramos el Recordset
Else 'De no existir el cliente
If MsgBox("Cliente no Encontrado" & vbCrLf & _
"Desea crear al cliente : " _
& BUSCAR, vbYesNo, "No Encontrado") = vbYes Then
Me.Undo 'limpiamos
DoCmd.GoToRecord , , acNewRec 'Creamos un nuevo registro
Me.Controls("TELÉFONO").Enabled = True
Me.Controls("MÓVIL").Enabled = True
Me.Controls("FAX").Enabled = True
Me.Controls("OBS").Enabled = True
NIF = BUSCAR 'Asignamos el valor de la variable Buscar _
al campo IdCliente
DoCmd.GoToControl "TELÉFONO" 'Nos movemos al siguiente campo
Else 'De haber elegido NO
Me.Undo 'limpiamos
End If 'Salimos
End If
End Sub 'Nos vamos
T