IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Modélisation Discussion :

tables modifiables depuis formulaires


Sujet :

Modélisation

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2011
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 53
    Points : 30
    Points
    30
    Par défaut tables modifiables depuis formulaires
    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

  2. #2
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 672
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 672
    Points : 56 951
    Points
    56 951
    Billets dans le blog
    40
    Par défaut
    bonjour,

    Citation Envoyé par josi1986 Voir le message
    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.
    Il faudrait une requête "Ajout" qui pour chaque VisiteLigne créée, remplirait la table VisiteArretLigne avec les arrêts correspondants.

    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] ?

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2011
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 53
    Points : 30
    Points
    30
    Par défaut
    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.

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2011
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 53
    Points : 30
    Points
    30
    Par défaut
    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 ?

  5. #5
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 672
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 672
    Points : 56 951
    Points
    56 951
    Billets dans le blog
    40
    Par défaut
    Citation Envoyé par josi1986 Voir le message
    Une ligne possède 2 itinéraires, Aller et retour...
    Bah oui, suis-je bête

    Citation Envoyé par josi1986 Voir le message
    Si j'ai bien compris je dois ajouter la colonne "date" de visite ligne dans la colonne "date" de visitearretligne ?
    Lors d’une visite, tous les arrêts sont visités à la même date, non ?
    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...

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2011
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 53
    Points : 30
    Points
    30
    Par défaut
    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

  7. #7
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 672
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 672
    Points : 56 951
    Points
    56 951
    Billets dans le blog
    40
    Par défaut
    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,... ?

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2011
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 53
    Points : 30
    Points
    30
    Par défaut
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    INSERT INTO VisiteArretLigne ( [Date], ID_ArretLigne, ID_Itineraire, Num_Arret, Num_GIPA )
    SELECT DISTINCT VisiteLigne.Date, ArretLigne.ID_ArretLigne, ArretLigne.ID_Itineraire, ArretLigne.Num_Arret, ArretLigne.Num_GIPA
    FROM (Ligne INNER JOIN (Itineraire INNER JOIN ArretLigne ON Itineraire.ID_Itineraire = ArretLigne.ID_Itineraire) ON Ligne.IndiceInterne = Itineraire.IndiceInterne) INNER JOIN VisiteLigne ON Ligne.IndiceInterne = VisiteLigne.IndiceInterne;

    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

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2011
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2011
    Messages : 53
    Points : 30
    Points
    30
    Par défaut
    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

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Modifier lignes d'une table via un formulaire
    Par Hombe dans le forum IHM
    Réponses: 2
    Dernier message: 11/03/2009, 19h23
  2. Réponses: 1
    Dernier message: 13/04/2008, 12h51
  3. Modifier une table uniquement par formulaire
    Par langevert dans le forum Sécurité
    Réponses: 6
    Dernier message: 14/08/2007, 13h39
  4. modifier champs formulaire depuis object
    Par nin47 dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 12/04/2006, 09h51
  5. Réponses: 2
    Dernier message: 08/03/2006, 22h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo