Registros vacíos o nulos en informe

A ver si alguien me saca de dudas.

Tengo una base de datos que genera una serie de informes. Uno de estos informes contiene un gran número de registros que la mayoría de las veces no contienen datos. Los registros se encuentran en el detalle del informe.

Se que con una expresión como esta, no se imprime el registro y la etiqueta del campo que no contiene datos:

if IsNull(me![NombreDelControl]) then

NombreEtiqueta.visible = false

else NombreEtiqueta.visible = true end if

Pero no quisiera generar este código para cada registro, me gustaría que si un registro en concreto fuese nulo, automáticamente el resto de registros del detalle del informe tampoco se imprimiesen, me explico: quiero ahorrame el escribir ese código por cada registro. Son muchos y todos tienen un nombre automático, no los he renombrado y por consiguiente es muy pesado el escribir el correspondiente código por registro. Por eso mi pregunta es:

¿Existe alguna manera por código de hacer esto?

1 respuesta

Respuesta
1

El sistema más sencillo para que no te salgan registros vacíos es prefiltrar antes el informe. Tenemos dos posibilidades:

1.- Que el informe se base en una consulta

2.- Que el informe se base en una tabla.

En el primer caso la solución es sencilla: coges un campo representativo, es decir, un campo que siempre tenga que tener un valor. Supongamos que ese campo es [Nombre].

Entonces, en la consulta origen del informe, te vas a la columna donde esté [Nombre] y como criterios le escribes lo siguiente:

<>Null

En el segundo caso la cosa es un poco más trabajosa (si quieres pruébala en una copia de tu BD). Tienes que crearte una consulta con EXACTAMENTE los mismos campos que utilizas en el informe. Igual que en el caso anterior, buscas el campo representativo [Nombre] y le pones el filtro que te comentaba.

Una vez hecho esto sitúas el informe en vista diseño, sacas sus propiedades y te vas a la pestaña Datos -> Origen del registro, y ahí seleccionas la consulta que acabas de crear.

A ver si con esto te funciona.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas