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

IHM Discussion :

Mise à jour automatique champ commun entre plusieurs tables [Débutant(e)] [AC-2010]


Sujet :

IHM

  1. #1
    Membre à l'essai
    Homme Profil pro
    Ingénieur environnement
    Inscrit en
    Septembre 2014
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur environnement
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2014
    Messages : 73
    Points : 20
    Points
    20
    Par défaut Mise à jour automatique champ commun entre plusieurs tables
    Bonjour,

    Je suis vraiment un débutant sur access et je dois le prendre en main dans le cadre de mon travail.

    Je travaille actuellement sur une base de données qui va vite devenir très conséquente au niveaux des champs et des lignes donc je passe sur access.

    J'ai été "obligé" de diviser ma table principale en 3 trois sous tables car le nombre maximum d'index par table était trop petit pour ma table principale . Du coup je souhaite faire qqch de très simple en théorie: séparer mes informations sur 3 tables sources différentes reliées entre elle par un champ commun.
    J'ai créer un champ commun "N° Auto" pour ma table 1, table 2, et table 3. Dans ma table 1, ce numéro est généré automatiquement et il s'agit de ma clef primaire (également défini comme clef primaire pour les tables 2 et 3). Lors que je rentre des informations manuellement dans ma table 1, le champ N° Auto se remplit automatiquement. J'aimerai que pour chaque ligne remplie dans la table 1, le N°Auto généré soit également reporté automatiquement dans les tables 2 et 3.

    Quelle est la meilleure solution ?

    Cordialement,

    Fontaine

  2. #2
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 004
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 004
    Points : 24 593
    Points
    24 593
    Par défaut
    Bonjour,

    Vu ton découpage, tu dois avoir un formulaire principal avec Table1 comme source, puis 2 sous-formulaires (Table2 et Table3).
    Utilises la propriété Champs père/champ fils du container de sous-formulaire. ça se fera automatiquement.

    Cordialement,
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  3. #3
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Citation Envoyé par Fontaine_CLB Voir le message
    J'ai été "obligé" de diviser ma table principale en 3 trois sous tables car le nombre maximum d'index par table était trop petit pour ma table principale .
    N'as-tu pas un problème de conception au départ ?

    Philippe

  4. #4
    Membre à l'essai
    Homme Profil pro
    Ingénieur environnement
    Inscrit en
    Septembre 2014
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur environnement
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2014
    Messages : 73
    Points : 20
    Points
    20
    Par défaut
    Citation Envoyé par Philippe JOCHMANS Voir le message
    Bonjour



    N'as-tu pas un problème de conception au départ ?

    Philippe
    Bonjour,

    Ma base contient vraiment bcp de champs. Bcp de ces champs sont de type "code" et renvoient à d'autres tables faisant office de "menu déroulant". Je pense qu'il s'agit de la bonne méthode mais peut être que je me trompe ?

    Loufab: Merci pour votre réponse. Dans un premier temps j'aurai souhaité pouvoir remplir ma base sous forme de feuille sans passer par des formulaires pour la compléter. J'ai un début de base de données sous excel que je souhaite transférer sur access avant de m'attaquer au gros des données. Je ne peux pas (je pense) importer mes donner via un formulaire d'importation car j'ai voulu faire les choses plus carrées sur access et les champs de mes différentes sous-tables ne contiennent pas toujours exactement la même expression que celle de mes menus déroulants sous excel.
    Mais j'imagine que je suis obligé de passer par un formulaire et des sous formulaires comme vous l'avez évoqué dans ce cas non ?

    Merci pour votre aide.

  5. #5
    Membre à l'essai
    Homme Profil pro
    Ingénieur environnement
    Inscrit en
    Septembre 2014
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur environnement
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2014
    Messages : 73
    Points : 20
    Points
    20
    Par défaut
    Citation Envoyé par loufab Voir le message
    Bonjour,

    Vu ton découpage, tu dois avoir un formulaire principal avec Table1 comme source, puis 2 sous-formulaires (Table2 et Table3).
    Utilises la propriété Champs père/champ fils du container de sous-formulaire. ça se fera automatiquement.

    Cordialement,
    Bonjour,

    Je reviens vers vous car j'ai essayé cette méthode mais sans résultat. J'ai bien défini mes champs père/fils sur mon champ "N° Auto" commun à ma table 1 et aux tables 2 et 3.

    Au moment de remplir le formulaire, le numéro automatique est bien généré dans mon formulaire mais il n'est pas reporté automatiquement dans mes sous formulaires correspondant aux tables 2 et 3. Alors je peux reporter manuellement le numéro auto dans les sous formulaire des tables 2 et 3 (pas d'erreur possible, seul le numéro auto "actuel" est autorisé) mais ce n'est franchement pas pratique. Comment faire en pratique pour que le numéro auto généré dans mon formulaire soit automatiquement reporté dans mes sous formulaires 2 et 3 ?

    Je vous remercie d'avance pour votre aide.

    Cordialement

  6. #6
    Membre à l'essai
    Homme Profil pro
    Ingénieur environnement
    Inscrit en
    Septembre 2014
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur environnement
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2014
    Messages : 73
    Points : 20
    Points
    20
    Par défaut
    Une image vaut peut être mieux qu'un texte.

    Mon numéro d'incrémentation est généré automatiquement pour mon formulaire f_source_gen. J'ai retiré le champ "n° incrementation" de mon formulaire pour des raisons de lisibilité mais on retrouve bien le numéro d'incrémentation "32" dans le champ "id_source" qui es un champ calculé "Département" + "Sous-famille UNEP" + "n° incrémentation".

    J'aimerai que ce numéro 32 soit automatiquement reporté dans mon sous formulaire sf_source_geo dans le champ "no_incrementation".

    Comment faire ?
    Images attachées Images attachées  

  7. #7
    Membre expert
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2012
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2012
    Messages : 1 869
    Points : 3 448
    Points
    3 448
    Par défaut
    Bonjour Fontaine_CLB,

    Je te joints une petite base qui représente ce que tu veux faire selon moi. Un numéro auto dans la table 1 et des numéros dépendant de ce numéro dans les autres tables. Les relations sont de 1 > 1 selon ton premier post. Un formulaire principal avec un sous-formulaire. Regarde la structure, je crois que c'est comme ça que tu devrais fonctionner.

    Bonne journée
    Fichiers attachés Fichiers attachés
    Ce qui se conçoit bien s’énonce clairement et les mots pour le dire arrivent aisément. Nicolas Boileau
    Si tout est OK, n'oubliez pas de cliquer sur

  8. #8
    Membre à l'essai
    Homme Profil pro
    Ingénieur environnement
    Inscrit en
    Septembre 2014
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur environnement
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2014
    Messages : 73
    Points : 20
    Points
    20
    Par défaut
    Bonjour Robert1957 ! Ca a l'air d'être tout à fait ça merci !

    Je regarde en détail la méthode et je reviens dans l'après midi pour confirmer tout ca.

    Merci encore

  9. #9
    Membre à l'essai
    Homme Profil pro
    Ingénieur environnement
    Inscrit en
    Septembre 2014
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur environnement
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2014
    Messages : 73
    Points : 20
    Points
    20
    Par défaut
    Je confirme que la méthode proposé par Robert 1957 fonctionne très bien pour ma demande !

    Merci pour le coup de main

    Bonne journée

  10. #10
    Membre à l'essai
    Homme Profil pro
    Ingénieur environnement
    Inscrit en
    Septembre 2014
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur environnement
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2014
    Messages : 73
    Points : 20
    Points
    20
    Par défaut
    Bonsoir,

    Je me suis peut être un peu avancé ce matin. J'ai voulu appliqué la méthode à une de Robert1957 à une courte base de données vide créée pour l'exercice et ça a fonctionné sans pb.

    J'ai ensuite voulu transposer la méthode à ma base de données plus complexe et cela ne fonctionne pas.... Je me retrouve dans la même situation que précédemment, à savoir : devoir moi même remplir le champ fils numérique de mon sous formulaire !

    Je ne comprends absolument pas pourquoi cela ne fonctionne pas dans le cas de ma base de données réelle. J'ai vérifié l'exactitude du format des deux champs de ma table principale et secondaire, j'ai bien vérifié l'index sans doublon pour mon champ de la table secondaire... J'ai supprimé les champs, je les ai recréé, j'ai redéfini les relations et j'ai recréé le formulaire et sous formulaire. Et rien à faire, les numéros de la table 2 et 3 liés au numéro auto de la table 1 principale ne se mettent pas automatiquement à jour.

    Auriez vous une piste de réflexion sur l'origine du pb ? Ai-je le droit de joindre ma base en pièce jointe sur ce forum ?

    Bonne soirée

  11. #11
    Membre expert
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2012
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2012
    Messages : 1 869
    Points : 3 448
    Points
    3 448
    Par défaut
    Bonjour Fontaine_CLB,

    Oui tu as le droit, en format zip. On pourra regarder ce qui cloche parce que là je vois pas du tout...
    Ce qui se conçoit bien s’énonce clairement et les mots pour le dire arrivent aisément. Nicolas Boileau
    Si tout est OK, n'oubliez pas de cliquer sur

  12. #12
    Membre à l'essai
    Homme Profil pro
    Ingénieur environnement
    Inscrit en
    Septembre 2014
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur environnement
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2014
    Messages : 73
    Points : 20
    Points
    20
    Par défaut
    Merci pour votre aide. Vous trouverez ci joint ma base de données.

    Quelques indications : ma table t_source_gen est ma table "mère". De nombreuses tables "filles" lui seront rattachées via le numéro d'incrémentation de la table t_source_gen. Pour l'exemple, seule la table t_source_geo a été reliée à la table t_source_gen actuellement via le lien 1-1 entre le champ N_auto de la table t_source_gen et le champ N_FK_source de la table t_source geo.

    J'ai créé le formulaire t_source_gen et le sous formulaire t_source_geo rapidement pour l'exemple sans mise en forme particulière et en définissant les champs père fils de jointure sur N_auto et N_FK_source.

    Le champ N_FK_source ne se met pourtant pas à jour automatiquement lorsque je remplis mon formulaire.


    Nul doute que l'erreur vient de moi mais j'ai beau chercher, je ne trouve pas l'origine de cette erreur.

    Bonne journée
    Fichiers attachés Fichiers attachés

  13. #13
    Membre expert
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2012
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2012
    Messages : 1 869
    Points : 3 448
    Points
    3 448
    Par défaut
    Bonjour Fontaine_CLB,

    C'est à cause de:
    Nom : Capture.PNG
Affichages : 716
Taille : 60,9 Ko
    qui fait référence à une autre table. Voici la base fonctionnelle.

    Bonne journée
    Fichiers attachés Fichiers attachés
    Ce qui se conçoit bien s’énonce clairement et les mots pour le dire arrivent aisément. Nicolas Boileau
    Si tout est OK, n'oubliez pas de cliquer sur

  14. #14
    Membre à l'essai
    Homme Profil pro
    Ingénieur environnement
    Inscrit en
    Septembre 2014
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur environnement
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2014
    Messages : 73
    Points : 20
    Points
    20
    Par défaut
    Ah oui effectivement, mon oeil novice ne l'avait pas remarqué ! J'ignore d'où vient cette erreur initialement mais le pb semble résolu.

    Merci encore pour votre aide précieuse, je vais pouvoir enfin m'atteler à la création de mes formulaires.

    Bonne journée

  15. #15
    Membre à l'essai
    Homme Profil pro
    Ingénieur environnement
    Inscrit en
    Septembre 2014
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur environnement
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2014
    Messages : 73
    Points : 20
    Points
    20
    Par défaut
    Bon en fait Access rajoute ces champs "value" pour chacun des champs avec une zone de liste déroulante autorisant plusieurs choix (champs multi valués).

    Dans mes formulaires ils représentent des "cadres" blancs vides donc je les supprime (en espérant ne pas commettre d'impaires).

    Fontaine

  16. #16
    Membre expert
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2012
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2012
    Messages : 1 869
    Points : 3 448
    Points
    3 448
    Par défaut
    Bonjour Fontaine_CLB,

    Ce sont des champs multi-valués, dès que tu auras des données dans la table correspondante tu auras:
    Nom : Multi-value.png
Affichages : 644
Taille : 3,7 Ko

    Bonne journée
    Ce qui se conçoit bien s’énonce clairement et les mots pour le dire arrivent aisément. Nicolas Boileau
    Si tout est OK, n'oubliez pas de cliquer sur

  17. #17
    Membre à l'essai
    Homme Profil pro
    Ingénieur environnement
    Inscrit en
    Septembre 2014
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur environnement
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2014
    Messages : 73
    Points : 20
    Points
    20
    Par défaut
    Oui oui j'ai bien identifié les champs multi valués. Mais ces champs ne sont pas vides dans mes tables.... Mais, chose étrange, lors de la création d'un sous formulaire je n'ai pas la possibilité de sélectionner mon champ multivalué "complet" mais seulement le "sous.champ" XXXXXX.value composant mon champ XXXXXXX. Cela arrive seulement sur les sous formulaires... Par exemple si j'essaie de rajouter ma table t_source_gen en sous formulaire (oui ca n'a aucun sens, c'est pour l'exemple), alors mon champ multivalué "code_origine_bd_source" n'est plus accessible mais seulement le "sous champs" "code_origine_bd_source.value"....

    J'avoue ne pas du tout comprendre la logique d'Access ici


    Je joins une image surement plus parlante Nom : Access_multivalué.png
Affichages : 736
Taille : 62,1 Ko

  18. #18
    Membre expert
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2012
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2012
    Messages : 1 869
    Points : 3 448
    Points
    3 448
    Par défaut
    Bonjour Fontaine_CLB,

    Ok je comprend, c'est l'assistant qui fait cela.

    Si tu crées ton sous-formulaire sans l'assistant tu n'auras pas ce problème. Tu peux aussi aller modifier la requête du sous-formulaire pour avoir le champ "code_origine_bd_source" au lieu de "code_origine_bd_source.Value".

    Pourquoi l'assistant fait cela? Je n'ai pas la moindre idée....

    Bonne journée
    Ce qui se conçoit bien s’énonce clairement et les mots pour le dire arrivent aisément. Nicolas Boileau
    Si tout est OK, n'oubliez pas de cliquer sur

  19. #19
    Membre à l'essai
    Homme Profil pro
    Ingénieur environnement
    Inscrit en
    Septembre 2014
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur environnement
    Secteur : Santé

    Informations forums :
    Inscription : Septembre 2014
    Messages : 73
    Points : 20
    Points
    20
    Par défaut
    Merci pour votre réponse Robert1957.

    Cela me rassure de voir que je ne suis pas le seul à être interloqué par la logique de l'assistant, ca me rassure

    Bonne soirée

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

Discussions similaires

  1. [OL-2007] problème de mise à jour automatique champs
    Par reglisseazur dans le forum Outlook
    Réponses: 0
    Dernier message: 25/06/2015, 07h23
  2. Mise à jour automatique champ base de donnée
    Par xav3601 dans le forum Visio
    Réponses: 0
    Dernier message: 16/06/2009, 15h12
  3. comment trouve la difference dans un champ commun entre deux tables
    Par pmorth dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 05/02/2008, 06h04
  4. Réponses: 9
    Dernier message: 18/11/2007, 22h59
  5. mise à jour automatique de champs entre 2 tables
    Par romdyane dans le forum Access
    Réponses: 5
    Dernier message: 11/10/2005, 18h51

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