|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Candidat au titre de Membre du Club
![]() Inscription : juillet 2011 Messages : 53 ![]() |
Bonjour, j'ai créé un base de données comme ceci:
j'ai les tables suivantes avec leurs attributs: [Ligne]: CLE= IndiceInterne (numérique) [Itinéraire]: CLE= ID_Itinéraire (texte), IndiceInterne [PointArret]: CLE= ID_PA (numérique) [ArretLigne]: CLE= ID_ArretLigne (numérique), Accessibilité, ID_Itinéraire, ID_PA [VisiteLigne]: CLE= Date, IndiceInterne [VisitePointArret]: CLE= ID_Visite(numérique), Date, Pente(numérique), ID_ArretLigne les liens entre ces tables: [Ligne]1---n[VisiteLigne]1---n[VisiteArretLigne] 1...........................................................n |...........................................................| |...........................................................| n...........................................................1 [Itinéraire]1----------------------n[ArretLigne] ........................................................n ........................................................| ........................................................| ........................................................1 ..................................................[PointArret] Je souhaite afficher pour une ligne donnée les dates de visite de la ligne et qu'automatiquement les points d'arrets liées à la ligne reprenne ses dates de visites pour que je n'ai qu'à rentrer les valeurs de pentes à chaque point d'arrêt en fonction de la ligne et de la date. EX de formulaire souahité: Ligne: 1 dates de visite: 01/01/2011 ......................02/02/2011..........(en choisissant cette date j'ai ce qui suit) Arret................Date..................Pente arret1............02/02/2011................... arret2............02/02/2011................... arret3............02/02/2011................... et je complète les pentes pour cette date sur le formulaire Pour le moment j'affiche la ligne et les dates de visite mais je suis obligé de rentrer les points d'arrêts un par un alors que chaque itinéraire est déja définit. Le problème vient-il des tables et des liens ou bien des requetes et formulaires? Merci d'avance pour vos réponses |
|
|
00
|
|
|
#2 | |
|
Expert Confirmé Sénior
![]() ![]() Fabien Enseignant Inscription : janvier 2009 Messages : 2 415 ![]() |
bonjour,
Citation:
Le problème que je vois c’est que pour une ligne donnée il y a plusieurs itinéraires possibles. Doit-on considérer que lorsqu’on visite une ligne, on visite les arrêts de tous les itinéraires possibles de la ligne ? Ou doit-on plutôt considérer une table [VisiteItineraireLigne] raccordée à [itineraire] ? |
|
|
00
|
|
|
#3 |
|
Candidat au titre de Membre du Club
![]() Inscription : juillet 2011 Messages : 53 ![]() |
Bonjour,
Une ligne possède 2 itinéraires, Aller et retour, et lorsqu'une visite est effectuée on passe par tous les points d'arrêts de la ligne. |
|
|
00
|
|
|
#4 |
|
Candidat au titre de Membre du Club
![]() Inscription : juillet 2011 Messages : 53 ![]() |
j'ai essayé la requête ajout mais rien ne se passe. j'ai suivit les tutoriaux qu'on peut trouver sur le net car je ne l'ai jamais utilisé auparavant.
Si j'ai bien compris je dois ajouter la colonne "date" de visite ligne dans la colonne "date" de visitearretligne ? |
|
|
00
|
|
|
#5 | |
|
Expert Confirmé Sénior
![]() ![]() Fabien Enseignant Inscription : janvier 2009 Messages : 2 415 ![]() |
Bah oui, suis-je bête
![]() Citation:
Dans ce cas, inutile de dupliquer la date de la visite dans [VisiteArretLigne]. Si j’ai bien compris, il s’agit pour une visite donnée, 1°) de récupérer tous les arrêts à visiter (en suivant le chemin VisiteLigne---Ligne---Itinéraire---ArretLigne) et de sélectionner les couples (identifiantVisiteLigne, identifiantArretLigne) 2°) d’insérer les couples sélectionnés au 1°) dans la table [VisiteArretLigne] Pour 1°), requête de sélection faisant participer les tables jointes : VisiteLigne---Ligne---Itinéraire---ArretLigne avec un critère sur IdentifiantVisiteLigne. Pour réaliser 2°), basculer la requête en mode "Ajout" et la compléter pour remplir les couples (identifiantVisiteLigne, identifiantArretLigne) de la table [VisiteArretLigne]. Cela te fera une requête à exploiter en VBA dans ton formulaire afin d’automatiser le processus. à suivre... |
|
|
00
|
|
|
#6 |
|
Candidat au titre de Membre du Club
![]() Inscription : juillet 2011 Messages : 53 ![]() |
Bonjour,
le problème est que quand je fait ma requete ajout il m'ajoute également les données qui sont déja dans la table visitearretligne. par exemple: j'ai mis deux dates de visite de ma ligne1 mon formulaire m'affiche bien les deux dates et les points d'arrets liées à la ligne, donc comme ceci: Ligne: 1 dates de visite: 01/01/2011 ......................02/02/2011..........(en choisissant cette date j'ai ce qui suit) Arret................Date..................Pente arret1............02/02/2011................... arret2............02/02/2011................... arret3............02/02/2011................... Mais quand je rentre une nouvelle date et que je fait appel à ma requete ajout j'ai bien ma 3eme date qui s'affiche avec les arrets sauf que les données de mes deux premieres dates sont également dupliquées. alors si je rajoute des dates de visites à chaque fois je dupliquerais les données des précédentes dates de visites, en gros j'ai ça: arret1............01/01/2011...............5 arret1............01/01/2011...............5 arret1............02/02/2011...............5 arret1............02/02/2011...............5 arret1............03/03/2011...............5 arret1............03/03/2011...............5 et si je rajoute une quatrième date j'aurais ceci: arret1............01/01/2011...............5 arret1............01/01/2011...............5 arret1............02/02/2011...............7 arret1............02/02/2011...............7 arret1............03/03/2011...............6 arret1............03/03/2011...............6 arret1............04/04/2011...............4 arret1............04/04/2011...............4 donc quand j'ai 50 arrets par ligne on image facilement la croissance exponentielle et la saturation |
|
|
00
|
|
|
#7 |
|
Expert Confirmé Sénior
![]() ![]() Fabien Enseignant Inscription : janvier 2009 Messages : 2 415 ![]() |
Bonjour,
quel est le code SQL de ta requête "Ajout" ? Quel est le code VBA qui lance la requête ? A quoi ressemble ton formulaire, les contrôles, sous-formulaire,... ? |
|
00
|
|
|
#8 | ||
|
Candidat au titre de Membre du Club
![]() Inscription : juillet 2011 Messages : 53 ![]() |
je suis novice avec access et je ne sais utiliser SQL que pour creer des tables. et je n'ai jamais touché à VBA.
Donc quand je cré ma requete ajout le sql qui s'affiche est: Code sql :
IndiceInterne = ID_ligne Num_GIPA = ID_pointArret Ensuite j'ai cré un formulaire ligne car je veux pouvoir rentrer les informations selon la ligne et la date de visite, voici à quoi ressemble mon formulaire (je ne sais pas insérer une image dans la discussion) Indice interne (le numéro de la ligne) ---> sous formulaire visite ligne qui affiche date (les différentes dates de visites de la ligne) ---> sous formulaire visitearretligne qui affiche Date, ID_ArretLigne, ID_Itinéraire, NumeroArret(les arrets ont un numero selon lordre de passage de la ligne), Num_GIPA, Pente |
||
|
|
00
|
|
|
#9 |
|
Candidat au titre de Membre du Club
![]() Inscription : juillet 2011 Messages : 53 ![]() |
j'avais oublié le critère sur la l'identifiantde visiteligne qui est la date. donc maintenant j'ai bien les données qui s'ajoute uniquement dans la visite que je souhaite. merci
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com