Access - Propiedad Filter de un recordset

 
Vista:

Propiedad Filter de un recordset

Publicado por Adrián (17 intervenciones) el 22/04/2009 20:02:18
hola a todos. Asigno a un subformulario un recordset dinamicamente de la forma Forms(x).SubFrm.Form.Recordset = RstPrincipal
y de esta manera trabajo solo con el recorsdset. El problema es que cdo quiero hacer un filtro de la forma RstPrincipal.Filter = "IdEmpresa =" & CodEmpresa en el formulario se selecciona el registro mas cercano que cumple con la condición (como si fuera la propiedad Find) y no filtra nada, lo mismo pasa si uso la propiedad recordset del objeto Form de la forma
Forms(x).SubFrm.Form.Recordset.Filter = ....
Todo esto que está abajo ya lo probé y dan error:
DoCmd.ApplyFilter
Forms(x).SubFrm.Form.Filter = ....
Forms(x).SubFrm.Form.FilterON
Alguien me podría guiar por favor para descubrir que estoy haciendo mal???. Desde ya muchas gracias. Ahh, todo esto es en Access 2003.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Propiedad Filter de un recordset

Publicado por Chea (1015 intervenciones) el 22/04/2009 23:04:02
Si el recordset es un DAO.Recordset, no vale con asignar la propiedad. Échale un vistazo a la ayuda y verás que debes crear un nuevo recordset a partir del filtrado, por lo tanto, deberías asignar de nuevo el recordset al formulario.

Form.Filter=... debería funcionar, pero, si has puesto el FilterOn tal como aquí, está mal, pues debería ser:

Forms(x).SubFrm.Form.FilterON = True

También ten en cuenta que la mejor forma de filtrar un subformulario de manera sincronizado con el principal es usando las propiedades LinkMasterFields y LinkChildFields.

Saludos
José Bengoechea Ibaceta
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar