OVH Cloud OVH Cloud

Annulation d'état

6 réponses
Avatar
Péric
Bonsoir à tous,
j'ai un état qui sur sa fermeture exécute une requette action (avec
messages d'affichage)qui passe une valeur impression de vrai à faux.
J'ai voulu ajouté une fermeture automatique s'il n'y a pas
d'enregistrement à l'aide de l'évènement NoData, mais le problème est
que même sans enregistrement ma requette s'exécute et donc les messages
lors de l'exécution s'affichent. Y a-t-il une variable générée par
access en cas d'enregistrement vide que je puisse récupérer pour annuler
l'exécution de ma requête action? Merci

6 réponses

Avatar
ze Titi
Bonjour Péric

Tu peux ajouter une variable de type boolean en tête de code et que tu
testes avant l'exécution de ta requête. De cette façon, tu n'es plus
embêté.

Autre solution, à l'ouverture de ton état, tu testes le nombre
d'enregistrements de ta requête avec un DCount. S'il est à 0, tu lances
un Cancel=True et le tour est joué !

Dans ton message du jeudi
Bonsoir à tous,
j'ai un état qui sur sa fermeture exécute une requette action (avec messages
d'affichage)qui passe une valeur impression de vrai à faux. J'ai voulu ajouté
une fermeture automatique s'il n'y a pas d'enregistrement à l'aide de
l'évènement NoData, mais le problème est que même sans enregistrement ma
requette s'exécute et donc les messages lors de l'exécution s'affichent. Y
a-t-il une variable générée par access en cas d'enregistrement vide que je
puisse récupérer pour annuler l'exécution de ma requête action? Merci


--
Voilou !
Cordialement,

Ze Titi

Avatar
Péric
Bonjour Péric

Tu peux ajouter une variable de type boolean en tête de code et que tu
testes avant l'exécution de ta requête. De cette façon, tu n'es plus
embêté.

Autre solution, à l'ouverture de ton état, tu testes le nombre
d'enregistrements de ta requête avec un DCount. S'il est à 0, tu lances
un Cancel=True et le tour est joué !

Dans ton message du jeudi
Bonsoir à tous,
j'ai un état qui sur sa fermeture exécute une requette action (avec
messages d'affichage)qui passe une valeur impression de vrai à faux.
J'ai voulu ajouté une fermeture automatique s'il n'y a pas
d'enregistrement à l'aide de l'évènement NoData, mais le problème est
que même sans enregistrement ma requette s'exécute et donc les
messages lors de l'exécution s'affichent. Y a-t-il une variable
générée par access en cas d'enregistrement vide que je puisse
récupérer pour annuler l'exécution de ma requête action? Merci


Bonjour,

excuse-moi mais il va falloir que tu m'en dises un peu plus mon niveau
étant faible.
je test déjà ma requête au travers de l'évènement NoData. mon problème
est que j'ai du code au niveau de la fermeture de mon état (ma requête
action qui modifie mon champ "à imprimer" et que ce code est
exécuté.Donc je souhaite intégrer une condition avant son exécution pour
"sauter" cette portion de code. Ma question est comment tester l'absence
d'enregistrement? Comment fonctionne ce DCount? Merci, Eric.


Avatar
ze Titi
If DCount("unChampsDeTaRequête","leNomDeTaRequête")=0 then Exit Sub

Cette ligne te permet de sortir de la procédure s'il n'y a aucun
enregistrement dans ta requête.

Dans ton message du vendredi
Bonjour Péric

Tu peux ajouter une variable de type boolean en tête de code et que tu
testes avant l'exécution de ta requête. De cette façon, tu n'es plus
embêté.

Autre solution, à l'ouverture de ton état, tu testes le nombre
d'enregistrements de ta requête avec un DCount. S'il est à 0, tu lances un
Cancel=True et le tour est joué !

Dans ton message du jeudi
Bonsoir à tous,
j'ai un état qui sur sa fermeture exécute une requette action (avec
messages d'affichage)qui passe une valeur impression de vrai à faux. J'ai
voulu ajouté une fermeture automatique s'il n'y a pas d'enregistrement à
l'aide de l'évènement NoData, mais le problème est que même sans
enregistrement ma requette s'exécute et donc les messages lors de
l'exécution s'affichent. Y a-t-il une variable générée par access en cas
d'enregistrement vide que je puisse récupérer pour annuler l'exécution de
ma requête action? Merci


Bonjour,

excuse-moi mais il va falloir que tu m'en dises un peu plus mon niveau étant
faible.
je test déjà ma requête au travers de l'évènement NoData. mon problème est
que j'ai du code au niveau de la fermeture de mon état (ma requête action qui
modifie mon champ "à imprimer" et que ce code est exécuté.Donc je souhaite
intégrer une condition avant son exécution pour "sauter" cette portion de
code. Ma question est comment tester l'absence d'enregistrement? Comment
fonctionne ce DCount? Merci, Eric.


--
Voilou !
Cordialement,

Ze Titi



Avatar
Péric
If DCount("unChampsDeTaRequête","leNomDeTaRequête")=0 then Exit Sub

Cette ligne te permet de sortir de la procédure s'il n'y a aucun
enregistrement dans ta requête.

Dans ton message du vendredi
Bonjour Péric

Tu peux ajouter une variable de type boolean en tête de code et que
tu testes avant l'exécution de ta requête. De cette façon, tu n'es
plus embêté.

Autre solution, à l'ouverture de ton état, tu testes le nombre
d'enregistrements de ta requête avec un DCount. S'il est à 0, tu
lances un Cancel=True et le tour est joué !

Dans ton message du jeudi
Bonsoir à tous,
j'ai un état qui sur sa fermeture exécute une requette action (avec
messages d'affichage)qui passe une valeur impression de vrai à faux.
J'ai voulu ajouté une fermeture automatique s'il n'y a pas
d'enregistrement à l'aide de l'évènement NoData, mais le problème
est que même sans enregistrement ma requette s'exécute et donc les
messages lors de l'exécution s'affichent. Y a-t-il une variable
générée par access en cas d'enregistrement vide que je puisse
récupérer pour annuler l'exécution de ma requête action? Merci


Bonjour,

excuse-moi mais il va falloir que tu m'en dises un peu plus mon niveau
étant faible.
je test déjà ma requête au travers de l'évènement NoData. mon problème
est que j'ai du code au niveau de la fermeture de mon état (ma requête
action qui modifie mon champ "à imprimer" et que ce code est
exécuté.Donc je souhaite intégrer une condition avant son exécution
pour "sauter" cette portion de code. Ma question est comment tester
l'absence d'enregistrement? Comment fonctionne ce DCount? Merci, Eric.


Merci, merci!





Avatar
Gilles MOUGNOZ
Bonjour, ze Titi et Péric

Petite précision:
Pour compter le nombre d'élément, je préfére utiliser le caractère * plutôt
qu'un champ en particulier.
Extrait de l'aide sur DCount:
"La fonction DCount ne compte pas les enregistrements qui contiennent des
valeurs Null dans le champ désigné par expr, sauf si expr est le caractère
générique astérisque (*). Dans ce cas, la fonction DCount calcule le nombre
total d'enregistrements, y compris ceux qui contiennent des champs Null."
Le code devient donc:
If DCount("*","leNomDeTaRequête")=0 then Exit Sub
De plus, il me semble que cette fonction est optimisée pour ce cas
particulier mais je ne sais plus où j'ai vu cette information...
--
Bonne continuation
-------------------------------------------------------------------------------------------
http://www.mpfa.info : c'est bonheur pour ton ordinateur !
-------------------------------------------------------------------------------------------
If DCount("unChampsDeTaRequête","leNomDeTaRequête")=0 then Exit Sub

Cette ligne te permet de sortir de la procédure s'il n'y a aucun
enregistrement dans ta requête.
...
--
Voilou !
Cordialement,
Ze Titi


Avatar
ze Titi
Bonjour Gilles MOUGNOZ

Je me coucherai moins ignorant ce soir... Merci pour la précision !

Dans ton message <# du vendredi
Bonjour, ze Titi et Péric

Petite précision:
Pour compter le nombre d'élément, je préfére utiliser le caractère * plutôt
qu'un champ en particulier.
Extrait de l'aide sur DCount:
"La fonction DCount ne compte pas les enregistrements qui contiennent des
valeurs Null dans le champ désigné par expr, sauf si expr est le caractère
générique astérisque (*). Dans ce cas, la fonction DCount calcule le nombre
total d'enregistrements, y compris ceux qui contiennent des champs Null."
Le code devient donc:
If DCount("*","leNomDeTaRequête")=0 then Exit Sub
De plus, il me semble que cette fonction est optimisée pour ce cas
particulier mais je ne sais plus où j'ai vu cette information...


--
Voilou !
Cordialement,

Ze Titi