Filtros en Formularios distintos

Tengo un problema con una aplicación de Access y es el siguiente:
Tengo dos Formularios uno que hace de Padre con Registros y otro formulario que hace de Ventana de Dialogo.
El formulario Padre esta basado en una consulta de registros y el de dialogo es un formulario personalizado. En el formulario padre hay un botón que me abre la ventana de Dialogo con los siguientes objetos: Un cuadro de opciones (8 opciones) y al lado y misma altura de dichas opciones hay un cuadro combinado (objetos independiente del cuadro de opciones) que selecciona la opción que quiero filtrar en el documento padre, y también en este formulario (dialogo) un botón de aplicar filtros (click -> aplica -> cierra ventana de dialogo) y un ultimo botón de Cancelar.
En el Formulario padre hay cuadros combinados que se han generado porque las relaciones entre las tablas están todos hechos con Asistentes para búsquedas, pues bien las 8 opciones que te he comentado anteriormente hacen referencia a 8 cuadros combinados del Padre (normalmente los Asistente para búsqueda contienen la selección de la clave + descripción mostrando solo la descripción en el cuadro combinado), pues bien lo que se quiere conseguir es: Haciendo un click en el botón abrir filtro (formulario Padre) abrir el cuadro de dialogo seleccionar la opción ir al cuadro combinado seleccionar el valor que quiero filtrar y después aplicar filtro con dicho botón de "aplicar filtro" y mostrarme en el formulario padre todos los Registros que dependan de dicho valor filtrado (muy parecido al filtro por selección)
NOTA: La octava opción es "quitar Filtro" ya que Access cuando filtra guarda el filtrado
Si fueras tan amable de solucionarme este problema te estaría eternamente agradecido. He intentado meterme en Visual Basic usando las propiedades del Recordsource, recordset, controlsource, me. Filter y me. Filteron y no soy capaz de solucionarlo. Dime también si lo que quiero es imposible y me evito todo esto y lo diseño de otra manera. Mi correo electrónico por si quieres mandarme la solución es [email protected]

1 respuesta

Respuesta
1
El paso numero uno es abrir dialogo al pulsar un botón en el padre, lo harás con algo como esto:
----
DoCmd. OpenForm "dialogo",,,,, acDialog
----
Luego en el from dialogo, el botón aplicar filtro:
----
'crea el filtro del padre aqui
dim filtro as string
select case me.opcion
case 1
filtro="campo1=" & me.cuadrocombinado
case2
filtro="campo2=" & me.cuadrocombinado
'...
case8
filtro="campo8=" & me.cuadrocombinado
end select
'establecer filtro (elimina filtro anterior)
forms!padre.filter = x
'aplicar filtro
forms!padre.filteron = true
'cerrar dialogo
Docmd. Close
----
Yo no lo veo muy difícil.
Si no te aclaras, me puedes mandar lo tuyo en ZIP RAR u otro comprimido estándar a:
[email protected]
Y te corrijo lo que sea.
Salud.
Llevamos con esta pregunta pendiente de valoración casi dos meses ¿podrías cerrarla

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas