Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > Modélisation
Modélisation Le forum qui vous aide à résoudre vos questions relatives à la modélisation (tables et relations) de votre base de données sous Access. Pour les états et les formulaires, postez dans le forum IHM.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 26/10/2006, 11h22   #1
Membre confirmé
 
Inscription : novembre 2004
Messages : 364
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 364
Points : 202
Points : 202
Par défaut analyse et conception

Salut,

J'ai un petit problème qui se pose et je ne sais pas si c'est possible de pouvoir le résoudre.

Je m'explique, j'ai créer une table avec différents champs
Table1 ( chp1,chp2,chp3,chp4,etc...)


Sur cette table je veux savoir si les utilisateurs ont bien saisie tous les champs.

Donc pour savoir si le chp1 est bien renseigné, je fais une requête du style

Code :
1
2
3
select chp1,chp2,chp3,chp4,CStr("le champ 1 n'est pas renseigné") AS Expr1
from Table1
Where Isnull(chp1)
Cette requête me permet de faire le contrôle que pour le chp1, j'ai donc fait une requête pour tous les autres champs.

Pour connaitre toutes les erreurs, je fais une union de toutes ces requêtes, mais le problème c'est qu'il m'affiche plusieurs fois les enregistrements ou il y a plusieurs erreurs (normale je fais une requête Union) et autre problème lors de l'affichage de ma requête, je n'arrive pas à modifier les champs qui sont non valide

J'ai essayé de construire une table erreur

Erreur (numerr,deserr)
Exemple de cette table
1 - chp1 non renseigné
2 - chp2 non renseigné
etc....

Au lieu de mettre le champs CStr("le champ 1 n'est pas renseigné") AS Expr1, j'ai mis le numéro de l'erreur à la place avec sa description.

Ce qui me donne :

Code :
1
2
3
4
select chp1,chp2,chp3,chp4,numerr,deserr
from Table1,erreur
Where Isnull(chp1)
And numerr = 1
Mais cela ne change en rien les problème que j'avais énoncé précédemment, puisqu'il s'agit du même procédé sauf avec une table en plus.

Je ne sais pas si vous avez tous compris, n'hésitez pas si vous avez des questions afin d'améliorer la compréhension de mon problème.
tazmania est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/10/2006, 11h28   #2
Rédacteur/Modérateur

 
Avatar de loufab
 
Homme Fabrice CONSTANS
Ingénieur développement logiciels
Inscription : avril 2005
Messages : 7 095
Détails du profil
Informations personnelles :
Nom : Homme Fabrice CONSTANS
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : avril 2005
Messages : 7 095
Points : 11 630
Points : 11 630
Essaye plutot une fonction de test dans chaque champ.

Code :
1
2
 
SELECT IIf(IsNull([Champ1]),"pas saisie",[Champ1]) AS chp1, FROM TABLE;
Cordialement,
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste
MsGraph et VBA - 1e Partie 2e partie
Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010
Complément :Générateur de msgbox
Visitez mon Blog
Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine
loufab est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/10/2006, 12h35   #3
Membre confirmé
 
Inscription : novembre 2004
Messages : 364
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 364
Points : 202
Points : 202
Je vais essayer sa pour voir si sa marche mais est-ce que dans les requêtes iif, on peut utiliser la condition Or.

Code :
Du style iif([chp1]="test" OR [chp1]="titi" OR [chp1]="tata","toto",[chp1])
tazmania est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/10/2006, 14h26   #4
Rédacteur/Modérateur

 
Avatar de loufab
 
Homme Fabrice CONSTANS
Ingénieur développement logiciels
Inscription : avril 2005
Messages : 7 095
Détails du profil
Informations personnelles :
Nom : Homme Fabrice CONSTANS
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : avril 2005
Messages : 7 095
Points : 11 630
Points : 11 630
Oui bien entendu. Note que F1 t'aurai répondu immédiatement et surtout la même chose.

F1 est ton ami.
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste
MsGraph et VBA - 1e Partie 2e partie
Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010
Complément :Générateur de msgbox
Visitez mon Blog
Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine
loufab est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/10/2006, 14h41   #5
Membre confirmé
 
Inscription : novembre 2004
Messages : 364
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 364
Points : 202
Points : 202
Désolé je n'ai pas l'aide Access sur mon poste.
Je vais essayer de voir sur le site Microsoft

[Edit] A j'avais pas tout lu ton message sa marche comme ça, Yep cool, je vais tester sa de suite [/edit]
tazmania est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/10/2006, 16h09   #6
Membre confirmé
 
Inscription : novembre 2004
Messages : 364
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 364
Points : 202
Points : 202
Sayez j'ai enfin terminer mes différentes requêtes avec la condition iif, mais cela revient au même

Je n'arrive pas à modifier les champs ou il y a des erreurs.
Comme je l'ai dis au début je pense que ce problème ne peut pas être résolu, cela doit être du au fait que j'utilise l'union entre toutes mes requêtes

Code :
Rq1 Union Rq2 Union ... Union Rq15
C'est dommage j'aurais voulu que l'utilisateur puisse modifier ces erreurs directement
tazmania est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/10/2006, 16h32   #7
Rédacteur/Modérateur

 
Avatar de loufab
 
Homme Fabrice CONSTANS
Ingénieur développement logiciels
Inscription : avril 2005
Messages : 7 095
Détails du profil
Informations personnelles :
Nom : Homme Fabrice CONSTANS
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : avril 2005
Messages : 7 095
Points : 11 630
Points : 11 630
Pas de modification possible avec les requetes union idem pour les champs basé sur des fonctions (iif...) c'est normal puisque dans le premier cas les données sont assemblés à partir de sources hétérogènes et dans la deuxième la valeur est calculé.

Vu le problème que tu pose je me demande s'il n'est pas judicieux de travailler à partir du formulaire. Par exemple interdire la sortie d'un champ si celui-ci n'est pas renseigné. Auquel cas il faut utiliser la propriété "Valide si" de chaque controle ou encore faire un balayage des champs en sortie de l'enregistrement courant.

Tout dépend du fonctionnement que tu souhaite obtenir.
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste
MsGraph et VBA - 1e Partie 2e partie
Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010
Complément :Générateur de msgbox
Visitez mon Blog
Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine
loufab est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/10/2006, 16h34   #8
Membre confirmé
 
Inscription : novembre 2004
Messages : 364
Détails du profil
Informations forums :
Inscription : novembre 2004
Messages : 364
Points : 202
Points : 202
Ok je te remercie pour ton aide et pour tes conseils, je vais en aviser mes responsables pour voir si je peux toucher à leur joujou et s'il m'en accorde le temps.
tazmania est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h05.


 
 
 
 
Partenaires

Hébergement Web