Geen printer actie als er GEEN data te printen is vanuit formulier

Status
Niet open voor verdere reacties.

bikerron

Gebruiker
Lid geworden
9 mei 2009
Berichten
236
Hallo,
Ik heb een rapport en ik heb daarin aangegeven dat er GEEN afdruk plaats hoeft te vinden als er GEEN records zijn.
Dit is als volg geregeld:
Code:
Private Sub Report_NoData(Cancel As Integer)
Cancel = True
MsgBox ("Er zijn geen nieuwe vacatures te printen, (ten opzichte van de vorige afdruk)")
End Sub

Als ik echter een knop op een "startformulier" zet naar dit rapport, dan wordt de printer WEL geactiveerd, dit is dus eigenlijk niet de bedoeling. Kan ik iets regelen voordat ik het command:
Code:
DoCmd.OpenReport stDocName, acNormal
geactiveerd wordt?
Ik denk dus dat er eerst gekeken moet worden op het rapport, en als er NIETS is en vervolgens het commando negeren.
Of moet ik dezelfde query gebruiken die ik in het rapport al gebruik, dat lijkt mij een beetje dubbelop.

Al vast bedankt voor de te nemen moeite.

Ron
 
Je zult toch op de een of andere manier moeten achterhalen hoeveel records er uit het rapport gaan komen. Dat kan door bijvoorbeeld de RecordSource van het rapport uit te lezen en aan een variabele toe te wijzen, en via CurrentDB.OpenRecordSet(strSQL) het aantal records te tellen. Als groter dan 0, dan rapport printen, anders niks doen. Daarmee vervalt dan eigenlijk ook de NoData eigenschap van het rapport, want dat omzeil je dan al. Hoewel dat uiteraard wel optreedt als je het rapport direct opent.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan