|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : décembre 2007 Messages : 29 ![]() |
* Bonjour, *
j'ai un formulaire de saisie contenant un textbox nommé txtsite qui saisit le code de l'ensemble des sites de l'organisation. je veux m'assurer que: 1. avant la validation, l'application vérifie que le code du site est correcte en le comparant avec la liste des codes existant 2. on a 12 enregistrements pour chaque site donc, il faut refuser la saisie d'un code qui ne retrouve pas dans la liste des codes et si l'utilisateur essaie de saisie un 13e enregistrement pour un site donné. * Merci * |
|
|
00
|
|
|
#2 | ||
![]() ![]() René MAROTInscription : octobre 2005 Messages : 5 462 ![]() |
Pourrais-tu préciser quelle version d'Acess tu utilise ?
Pour le contrôle, la solution la plus facile est d'utiliser une liste déroulante branchée sur ta table des codes valides et d'activer la propriété "Limiter à la liste". Avec cela Access va empécher qu'on entre un code qui n'est pas dans la liste et ceux sans aucune ligne de code. Le contrôle du nombre de ligne est un peu plus difficile. En gros il faut vérifier avant l'insertion si on pas déjà un NOMBRE_MAX de ligne. Avec toutes les versions tu peux coder cela dans un formulaire avec la version 2010 tu peux mettre cela dans la table elle-même ce qui est plus sécuritaire mais un peu moins simple. Dans un formulaire, sur l'événement before insert, tu pourrais faire un truc du genre Code :
On pourrait faire plus éléguant en empéchant l'ajout d'enregistrements si on a atteind le max mais c'est plus compliqué que d'empécher la création d'un nouvel enr. A+
__________________
Vous voulez une réponse rapide et efficace à vos questions téchniques ? Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs. |
||
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : décembre 2007 Messages : 29 ![]() |
Merci pour votre prompte réponse.
On utilise la version 2007. je vais essayer ces codes merci |
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Inscription : décembre 2007 Messages : 29 ![]() |
je ne sais pas comment lier la fonction au champ txtsite du formulaire. en plus est-ce que cette fonction permettra-elle de vérifier que le code est correcte en le comparant avec la liste des codes existant dans la table tblsite
|
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : décembre 2007 Messages : 29 ![]() |
ce bout de code permet d'avoir seulement 12 enregistrements alors que je veux avoir plutot 12 enregistrement par site.
Par exemple, j'ai un site nommé Jacmel dont le code est 123; je dois avoir dans la table 12 enregistrements et pour un autre 12 enregistrements et ainsi de suite.... Je vois aussi que vous avez omis de tester si le code saisi existe dans la liste des codes avant de valider merci |
|
|
00
|
|
|
#6 | ||||||
![]() ![]() René MAROTInscription : octobre 2005 Messages : 5 462 ![]() |
Abosulment ce code ne fait pas exactement ce que tu veux c'est une piste de solution a adapter à tes besoins que je ne connais pas en détail.
Il te suffit de modifier la fonction CompterEnr(). Par exemple tu pourrais utiliser la fonction Code :
Pour le contrôle comme je l'avais mentionné en utilisant une liste déroulante couplée à une table de référence au lieu d'une TextBox tu peux éviter d'avoir à faire un contrôle. La liste ne propose QUE des codes valides et empèche qu'on en saisisse des invalides. Si tu tiens à utiliser un TextBox tu peux faire un truc du genre : sur le BeforeUpdate de ton champ de saisie Code :
Code :
__________________
Vous voulez une réponse rapide et efficace à vos questions téchniques ? Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs. |
||||||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com