Informe que filtre información específica

Dudas sobre Tablas, Consultas, Formularios, Informes...
Alemar24
Nivel 1
Mensajes: 4
Registrado: Vie Ene 14, 2022 8:07 pm

Informe que filtre información específica

Mensajepor Alemar24 » Vie Ene 14, 2022 8:30 pm

Buen dia
Espero puedan ayudarme, tengo poca experiencia en access
Estoy trabajando en una base de datos en la que tengo un formulario que contiene registros de alumnos con sus calificaciones y tengo un botón que muestra un informe, basado en una consulta, donde CPend es un campo boolean con la siguiente instrucción:

DoCmd.OpenReport "InfCPend", acViewPreview, , "CPend=True"

pero solo me filtra a los alumnos que tienen calificaciones reprobatorias con todas sus materias reprobadas o no, necesito que el informe muestre al alumno con solo las materias reprobadas, ¿es posible?
De antemano gracias por la ayuda que puedan darme

PereGaya
Nivel 4
Mensajes: 129
Registrado: Vie Ago 30, 2019 10:38 am

Re: Informe que filtre información específica

Mensajepor PereGaya » Sab Ene 15, 2022 5:18 pm

Buenos dias. Nos faltaria saber la consulta como filtra los campos.

Vete a la consulta, abrela en modo diseño, pica al boton vba que hay abajo, y lo que te sale nos lo pegas aqui. Asi veremos tus campos y te podremos orientar en el modo de crear esta consulta para que al abrir el informe aparezca lo que necesitas.

Alemar24
Nivel 1
Mensajes: 4
Registrado: Vie Ene 14, 2022 8:07 pm

Re: Informe que filtre información específica

Mensajepor Alemar24 » Lun Ene 17, 2022 4:48 pm

Gracias
Buen día
Esta es la consulta basada en 3 tablas (Alumnos, Materias y Materias Ing):

SELECT ALUMNOS.NUM_ALUM, ALUMNOS.NOM_COMP, ALUMNOS.GRADO, MATERIAS.A_B1, MATERIAS.A_B2, MATERIAS.A_B3, MATERIAS.B_B1, MATERIAS.B_B2, MATERIAS.B_B3, [MATERIAS ING].MATH_B1, [MATERIAS ING].MATH_B1_OBS, [MATERIAS ING].MATH_B2, [MATERIAS ING].MATH_B2_OBS, [MATERIAS ING].MATH_B3, [MATERIAS ING].MATH_B3_OBS,
FROM (ALUMNOS INNER JOIN MATERIAS ON ALUMNOS.NUM_ALUM = MATERIAS.NUM_ALUM) INNER JOIN [MATERIAS ING] ON ALUMNOS.NUM_ALUM = [MATERIAS ING].NUM_ALUM
WHERE (((MATERIAS.CPEND_ESP)=True)) OR ((([MATERIAS ING].CPEND_ING)=True))
ORDER BY ALUMNOS.NOM_COMP;

PereGaya
Nivel 4
Mensajes: 129
Registrado: Vie Ago 30, 2019 10:38 am

Re: Informe que filtre información específica

Mensajepor PereGaya » Lun Ene 17, 2022 8:34 pm

A bote pronto veo que la instruccion where le pones dos parametros separados por "or". Te esta seleccionando los dos valores. Cuando materias. Cpend es truo, o cuando materias. Ing es true.

Copiate la consulta y trabaja sobre la copia de la consulta. Modifica la consulta, cambia el or por un and y comprueba si es lo que necesitas.

Alemar24
Nivel 1
Mensajes: 4
Registrado: Vie Ene 14, 2022 8:07 pm

Re: Informe que filtre información específica

Mensajepor Alemar24 » Mar Ene 18, 2022 8:32 pm

Buen dia
Gracias por tu ayuda
Si sustituyo or por and la consulta no me filtra nada me sale en blanco :(

Avatar de Usuario
Neckkito
Moderador
Mensajes: 1205
Registrado: Dom Oct 25, 2015 3:42 pm

Re: Informe que filtre información específica

Mensajepor Neckkito » Mié Ene 19, 2022 9:23 am

Hola:

Al abrir la consulta vía VBA filtras por "CPend=True"

En tu consulta (y, por extensión en tu informe, si dices que está basado en dicha consulta) no veo en ninguna parte el campo "CPend". Por otra parte, lo que más se asemeja a esto son los campos por los que filtras, y por lo que veo se llaman CPEND_ESP y CPEND_ING, pero no CPend.

Finalmente, tampoco entiendo cuál es el problema, porque si la propia consulta te da los resultados filtrados por los alumnos que tienen esos dos campos como True ya te los está dando filtrados (por alguna cosa es un WHERE), con lo cual, si no lo entiendo mal, los resultados de la consulta no deberían devolverte ningún valor donde esos CPEND_XXX fueran false.

Saludos.
Access MVP 2017-2022
http://bit.ly/NckAccess

Alemar24
Nivel 1
Mensajes: 4
Registrado: Vie Ene 14, 2022 8:07 pm

Re: Informe que filtre información específica

Mensajepor Alemar24 » Mié Ene 19, 2022 5:58 pm

Buen día Neckkito
Aprovecho la oportunidad para decirle que por medio de sus ejemplos y sus participaciones en este y otros foros he logrado construir esta base de datos que me ha sido de gran utilidad para mi trabajo así como una de recetas muy útil también. Le estaré eternamente agradecida :)
Volviendo a mi pregunta, en efecto, el error estaba en CPend he cambiado la instrucción del botón que abre el informe de esta manera:

DoCmd.OpenReport "InfCPend", acViewPreview, , "CPEND_ESP=True or CPEND_ING=True"

y ahora me filtra la información como la necesito, una disculpa si no supe expresar correctamente mi duda
Muchas gracias Neckkito y PereGaya :)


Volver a “Objetos Access”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 10 invitados