Access - SiInm devuelve todos los registros

 
Vista:
Imágen de perfil de VICENTE

SiInm devuelve todos los registros

Publicado por VICENTE (32 intervenciones) el 24/11/2014 17:22:03
Buenas a todos, soy nuevo y es mi primera consulta.

Estoy haciendo un filtro en una consulta a través de la función SiInm.

Necesito que si el valor del campo que filtra, que proviene de un formulario, se deja en blanco, devuelva todos los registros de ese filtro, es decir, que no realice el filtro a través de ese campo.

E intentado con "", " * ", Como " * ", pero no consigo que me devuelva todos los registros.

La Expresión es la siguiente:

SiInm(EsNulo([Formularios]![Lecturas OK]![txtFechaLectura]) ; "" ; [Formularios]![Lecturas OK]![txtFechaLectura])

Si alguien me puede echar una mano y darme alguna solución, se lo agradezco.

Saludos al Foro.......
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
Imágen de perfil de Neckkito
Val: 529
Plata
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

SiInm devuelve todos los registros

Publicado por Neckkito (1157 intervenciones) el 26/11/2014 14:58:01
Hola Vicente:

Hay varias maneras para hacer lo que pides, pero ninguna aplicando filtros sobre la propia consulta.

La manera más sencilla de hacer lo que pides es:

1.- Te creas una consulta que devuelva todos los registros. Llamémosle C1
2.- Te creas otra consulta filtrando por el valor del campo que filtra. Llamémosle C2
3.- Suponiendo que el campo de filtro se llama [txt1] (Propiedades del campo -> Pestaña Otras -> Nombre), entonces...
4.- Añades al formulario un botón de comando y en su evento "Al hacer click" le generas este código:

...
Private Sub...
If isnull(me.txt1.value) then
docmd.openquery "C1"
Else
docmd.openquery "C2"
End if
End sub
...

Saludos,
firmaMail
http://neckkito.siliconproject.com.ar
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
Imágen de perfil de VICENTE

SiInm devuelve todos los registros

Publicado por VICENTE (32 intervenciones) el 26/11/2014 22:47:23
Gracias Neck, al final lo consegui con otra ayuda que ya estaba postada.

En el valor "verdadero" de la función siinm se coloca el nombre del mismo campo de la columna entre parentesis y funciona.

De todas formas te agradezco tu colaboración.

Un saludo
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
Imágen de perfil de Neckkito
Val: 529
Plata
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

SiInm devuelve todos los registros

Publicado por Neckkito (1157 intervenciones) el 27/11/2014 07:54:23
Hola Vicente:

Hacía tanto tiempo que no operaba con este tipo de filtros que la solución que aportas la había olvidado por completo (quizá por el "vicio" de recurrir siempre a VBA).

Tu respuesta ha sido como cuando ves una imagen de Mazinguer Z: automáticamente te "transporta al pasado", con los buenos recuerdos que ello conlleva

Muchas gracias por aportar esa solución.

Un abrazo,

Neckkito
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