
Problema con RecordsetClone access
Publicado por jonathan (2 intervenciones) el 09/11/2013 15:54:24
buenas noches poseo un problema con una sentencia que ocupo para hacer búsqueda desde un combobox en un formulario, al darle clic el me busca el resto de info en la tabla y me lo carga en el formulario, pero cuando este formulario forma parte de otro, osea este formulario pasa a ser un subformulario el código me da error, adjunto imagenes. este es el código que ocupo
esto es el evento clic del combobox
Private Sub ListaBuscar_AfterUpdate()
'/* ------ después de actualizar ListaBuscar ------
If Me.RFC.Enabled = False Then
Call ftRegistroBuscar(Me![listabuscar], Me![IdCliente], Me![nombre], DB_INTEGER)
Me!BtnAgregar.Enabled = False
Me!btneliminar.Enabled = True
Me.btnEditar.Enabled = True
Else
MsgBox "No puede estar agregado un registro al intentar buscar ", vbExclamation, "Alerta"
End If
End Sub
esta es la funcion
Function ftRegistroBuscar(findwath As Control, _
findWhere As Control, _
Optional StartIn As Control = Nothing, _
Optional FindType As Integer = DB_LONG) As Boolean
On Error GoTo ErrRegistroBuscar
Dim vfind As Variant
Dim findName As String
findName = Trim(findWhere.Name)
vfind = findwath.Value
'/* ---------------------------------------
Dim frm As Form
'Set frm = findwath.Parent
'If frm Is Nothing Then
Set frm = Screen.ActiveForm
'End If
With frm.RecordsetClone
.FindFirst fsCrearCriterio(findName, FindType, vfind)
If .NoMatch Then
MsgBox "No se encontró el dato", vbInformation, "Aviso"
Exit Function
End If
frm.Bookmark = .Bookmark
End With
Set frm = Nothing
ftRegistroBuscar = True
ExitRegistroBuscar:
On Error GoTo 0
Exit Function
ErrRegistroBuscar:
ErrControl
Resume ExitRegistroBuscar
End Function
como explico el código corre bien sien es para un formulario pero cuando es para un subformulario el error que sale es "HA ESPECIFICADO UNA EXPRESIÓN QUE CONTIENE UNA REFERENCIA NO VALIDA A LA PROPIEDAD RECORDSETCLONE. 7951"
esto es el evento clic del combobox
Private Sub ListaBuscar_AfterUpdate()
'/* ------ después de actualizar ListaBuscar ------
If Me.RFC.Enabled = False Then
Call ftRegistroBuscar(Me![listabuscar], Me![IdCliente], Me![nombre], DB_INTEGER)
Me!BtnAgregar.Enabled = False
Me!btneliminar.Enabled = True
Me.btnEditar.Enabled = True
Else
MsgBox "No puede estar agregado un registro al intentar buscar ", vbExclamation, "Alerta"
End If
End Sub
esta es la funcion
Function ftRegistroBuscar(findwath As Control, _
findWhere As Control, _
Optional StartIn As Control = Nothing, _
Optional FindType As Integer = DB_LONG) As Boolean
On Error GoTo ErrRegistroBuscar
Dim vfind As Variant
Dim findName As String
findName = Trim(findWhere.Name)
vfind = findwath.Value
'/* ---------------------------------------
Dim frm As Form
'Set frm = findwath.Parent
'If frm Is Nothing Then
Set frm = Screen.ActiveForm
'End If
With frm.RecordsetClone
.FindFirst fsCrearCriterio(findName, FindType, vfind)
If .NoMatch Then
MsgBox "No se encontró el dato", vbInformation, "Aviso"
Exit Function
End If
frm.Bookmark = .Bookmark
End With
Set frm = Nothing
ftRegistroBuscar = True
ExitRegistroBuscar:
On Error GoTo 0
Exit Function
ErrRegistroBuscar:
ErrControl
Resume ExitRegistroBuscar
End Function
como explico el código corre bien sien es para un formulario pero cuando es para un subformulario el error que sale es "HA ESPECIFICADO UNA EXPRESIÓN QUE CONTIENE UNA REFERENCIA NO VALIDA A LA PROPIEDAD RECORDSETCLONE. 7951"
Valora esta pregunta


0