Imprimir página | Cerrar ventana

No abrir informe sin registros

Impreso de: Foro de Access y VBA
Categoría: Access y VBA
Nombre del foro: Access y VBA
Descripción del foro: Foro de programacion en Access (Con código y sin código)
URL: http://www.mvp-access.com/foro/forum_posts.asp?TID=85478
Fecha de impresión: 20/Abril/2024 a las 14:47


Tema: No abrir informe sin registros
Publicado por: Nomada
Asunto: No abrir informe sin registros
Fecha de publicación: 09/Septiembre/2020 a las 11:37
Buenos
Tengo un informe basado en una consulta, en la cual el campo Alta posee el criterio <>"B". Esto quiere decir, que el informe debe mostrarme aquellos registros cuyo campo Alta sea distinto a "B". Ahora, si el informe no tiene ningún registro para mostrarme, deseo que no abra el informe.
He mirado ha probar con el evento "Al no haber datos", pero no acabo de entenderlo. El código es:

Private Sub Report_NoData(Cancel As Integer)
MsgBox "No existen registros", vbInformation   
DoCmd.CancelEvent
DoCmd.Close acReport, Me.Name                  
Exit Sub
End Sub

Alguna sugerencia. Gracias.




Respuestas:
Publicado por: Mihura
Fecha de publicación: 09/Septiembre/2020 a las 12:19
Para que se cancele el informe simplemente hay que poner la variable Cancel a true.

El resto de comandos sobran.


-------------
Jesús Mansilla Castells.
Saludos desde Móstoles.

http://www.accessaplicaciones.com" rel="nofollow - Access Aplicaciones
http://www.tecsys.es" rel="nofollow - Tecsys.es


Publicado por: emiliove
Fecha de publicación: 09/Septiembre/2020 a las 15:37
O antes de abrir revisas si existen registros con una función de dominio.

Saludos.


Publicado por: Pp2010
Fecha de publicación: 09/Septiembre/2020 a las 21:50
Buenas tardes, yo uso este codigo, que aclaro es de alguno de los maestros, pero me funciona muy bien"

Private Sub Report_NoData(Cancel As Integer)
 MsgBox "Aviso desde el Reporte:" & Me.Name & Chr(13) & Chr(13) _
    & "No hay datos para mostrar en este Informe.", vbCritical + vbOKOnly, "AVISO"
 Cancel = -1
End Sub

espero te ayude


Publicado por: Nomada
Fecha de publicación: 10/Septiembre/2020 a las 08:03
Gracias a todos.
He desactivado todos los comandos y puesto Cancel = True, pero me avisa de un error en la línea del comando anterior donde abro el informe (error 2501 en tiempo de ejecución). Este error lo he solucionado con el control de errores en ese evento, pero habría alguna posibilidad de evitar el error?


Publicado por: Nomada
Fecha de publicación: 11/Septiembre/2020 a las 11:01
Gracias.
Este hilo se puede cerrar satisfactoriamente.



Imprimir página | Cerrar ventana