OVH Cloud OVH Cloud

Evenement NoData

6 réponses
Avatar
ptkppr
bonjour à tous,
j'ai un etat constitué de 2 sous etats basés chacun sur une requete
independante.
Le 1er se trouve en zone entete le 2eme en zone detail.
En cas d’evenement « NoData » sur ce 2eme etat situe en zone detail j’ai
besoin qu’apparaisse une etiquette du genre « AUCUN ENREGISTREMENT
AUJOURD’HUI »
Le probleme est que dans le cas present le systeme me retourne une feuille
vierge…
Alors que si je lance ce 2eme sous etat de façon independante ça marche tres
bien avec ce script écrit par Eric (pour une autre base)
=============================================
Private Sub Report_NoData(Cancel As Integer)
Me.NoAbsence.Visible = True
End Sub
=============================================
Je ne comprends pas pourquoi le script ne fonctionne plus, si quelqu’un a
une idee elle est la bienvenue.
Merci d’avance

6 réponses

Avatar
Eric
Bonjour,

Je ne suis pas spécialiste des états et ce que je vais te proposer est
peut-être du bricolage.
Sous (derrière) le 2eme s/état, crées une étiquette nommée lblRien
contenant Pas d'absence et avec une police adaptée. Définis sa propriété
visible à Faux.

Sur l'évènement Au formatage de la section Détail de l'état principal:

Private Sub Détail_Format(Cancel As Integer, FormatCount As Integer)
If Me.NomSousEtat2.Report.CurrentRecord = 0 Then
Me.lblRien.Visible = True
Me.NomSousEtat2.Visible = False
End If
End Sub

Ca devrait pouvoir le faire.

bonjour à tous,
j'ai un etat constitué de 2 sous etats basés chacun sur une requete
independante.
Le 1er se trouve en zone entete le 2eme en zone detail.
En cas d’evenement « NoData » sur ce 2eme etat situe en zone detail j’ai
besoin qu’apparaisse une etiquette du genre « AUCUN ENREGISTREMENT
AUJOURD’HUI »
Le probleme est que dans le cas present le systeme me retourne une feuille
vierge…
Alors que si je lance ce 2eme sous etat de façon independante ça marche tres
bien avec ce script écrit par Eric (pour une autre base)
============================================ > Private Sub Report_NoData(Cancel As Integer)
Me.NoAbsence.Visible = True
End Sub
============================================ > Je ne comprends pas pourquoi le script ne fonctionne plus, si quelqu’un a
une idee elle est la bienvenue.
Merci d’avance


--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
ptkppr
essai pas concluant... j'ai essaye de faire un panachage avec le script
precedent que tu m'as envoyé mais ça ne marche pas.


bonjour à tous,
j'ai un etat constitué de 2 sous etats basés chacun sur une requete
independante.
Le 1er se trouve en zone entete le 2eme en zone detail.
En cas d’evenement « NoData » sur ce 2eme etat situe en zone detail j’ai
besoin qu’apparaisse une etiquette du genre « AUCUN ENREGISTREMENT
AUJOURD’HUI »
Le probleme est que dans le cas present le systeme me retourne une feuille
vierge…
Alors que si je lance ce 2eme sous etat de façon independante ça marche tres
bien avec ce script écrit par Eric (pour une autre base)
============================================ > Private Sub Report_NoData(Cancel As Integer)
Me.NoAbsence.Visible = True
End Sub
============================================ > Je ne comprends pas pourquoi le script ne fonctionne plus, si quelqu’un a
une idee elle est la bienvenue.
Merci d’avance


Avatar
Gilles MOUGNOZ
Bonjour,
Je ne suis pas spécialiste des états et ce que je vais te proposer est
peut-être du bricolage.
Sous (derrière) le 2eme s/état, crées une étiquette nommée lblRien
contenant Pas d'absence et avec une police adaptée. Définis sa propriété
visible à Faux.
Sur l'évènement Au formatage de la section Détail de l'état principal:

Private Sub Détail_Format(Cancel As Integer, FormatCount As Integer)
If Me.NomSousEtat2.Report.CurrentRecord = 0 Then
Me.lblRien.Visible = True
Me.NomSousEtat2.Visible = False
End If
End Sub

Ca devrait pouvoir le faire.


Bonjour

Dans ton test, ne serait-ce pas le nombre d'enregistrement qu'il faudrait
tester ?
Si oui, il faudrait remplacer par:
If Me.NomSousEtat2.Report.RecordCount = 0 Then
Me goures-je?

Bonne continuation

Avatar
Eric
Bonsoir,

Non seulement ce n'était pas, comme tu le signales, CurrentRecord mais
ce n'est pas non plus RecordCount.

En fait, il faut mettre :

Private Sub Détail_Format(Cancel As Integer, FormatCount As Integer)
Me.lblRien.Visible = Not (Me.NomSousEtat2.Report.HasData)
Me.NomSousEtat2.Visible = Me.NomSousEtat2.Report.HasData
End Sub

Donc, tu ne te goures pas ;-)


Bonjour

Dans ton test, ne serait-ce pas le nombre d'enregistrement qu'il faudrait
tester ?
Si oui, il faudrait remplacer par:
If Me.NomSousEtat2.Report.RecordCount = 0 Then
Me goures-je?

Bonne continuation


--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
Eric
Bonsoir ptkppr

Je t'ai fait une base exemple ici : http://cjoint.com/?ffvZppVAhL
(fichier conservé 21 jours).

A partir du formulaire d'accueil tu ouvres l'état général qui affichera
les infos demandées.(Commentaires sur ce formulaire et code).

Tu peux aussi lancer le sous état 2 directement à partir de la fenêtre
de la bd. Une demande de paramètre sera lancée,. Si tu tapes rien, il
affichera la situation du post du 03/05 c'est à dire le label Aucun
enregistrement, si tu mets Paris tu auras les clients de Paris.

Cet exemple regroupe donc les demandes de tes 2 psts

essai pas concluant... j'ai essaye de faire un panachage avec le script
precedent que tu m'as envoyé mais ça ne marche pas.



--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
ptkppr
Super ! je l'ai adapté à ma sauce... ça marche nickel !
Mille mercis



Bonsoir ptkppr

Je t'ai fait une base exemple ici : http://cjoint.com/?ffvZppVAhL
(fichier conservé 21 jours).

A partir du formulaire d'accueil tu ouvres l'état général qui affichera
les infos demandées.(Commentaires sur ce formulaire et code).

Tu peux aussi lancer le sous état 2 directement à partir de la fenêtre
de la bd. Une demande de paramètre sera lancée,. Si tu tapes rien, il
affichera la situation du post du 03/05 c'est à dire le label Aucun
enregistrement, si tu mets Paris tu auras les clients de Paris.

Cet exemple regroupe donc les demandes de tes 2 psts

essai pas concluant... j'ai essaye de faire un panachage avec le script
precedent que tu m'as envoyé mais ça ne marche pas.



--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr