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

Access Discussion :

Base de donnée, bouton appelant une table


Sujet :

Access

  1. #1
    Nouveau membre du Club
    Inscrit en
    Avril 2012
    Messages
    87
    Détails du profil
    Informations forums :
    Inscription : Avril 2012
    Messages : 87
    Points : 32
    Points
    32
    Par défaut Base de donnée, bouton appelant une table
    Bonjour,

    J'essaye de simplement créer une base de données sous access2013.

    Jai donc plusieur objets, chacun avec leurs caracteristique cf photo ci dessus

    La caractéristique Hardpoints contient un bouton qui ouvre une table qui contient toutes les infos liées à cette caracteristique.

    Jusque là, je m'en sors mais le problem est que je voudrais que chaque objets a ses propres caracteristiques "hardpoints" et je ne veut pas avoir à créer et enregistrer x tables "Hardpoints" à chaque fois, vu le nombre d'objet.

    Je souhaite donc que le bouton puisse ouvrir quand on click dessus, pour chaque page de mon formulaire et donc pour chaque objet, une table vierge avec les champs correspondant à "hardpoints" mais nétant pas encore remplis, pour pouvoir les remplir pour chaque objet indépendamment.

    Voila jespère que je me suis bien expliqué.

    Quelqu'un peut il m'aider?
    Images attachées Images attachées  

  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 015
    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 015
    Points : 24 550
    Points
    24 550
    Par défaut
    Bonjour,

    chaque objets a ses propres caracteristiques "hardpoints" et je ne veut pas avoir à créer et enregistrer x tables "Hardpoints" à chaque fois, vu le nombre d'objet.
    une table vierge avec les champs correspondant à "hardpoints"
    Si je suis ton résonnement, si tu as par exemple 10 objets "hardpoints" tu auras 10 tables, et 200 objets 200 tables, 1000 objets 1000 tables...
    Et si tu souhaites avoir un formulaire, ce qui est un minimum pour un consulter/saisir/modifier/supprimer il te faudra le même nombre de formulaire.

    Ce n'est pas très réaliste comme approche du problème et pas viable du tout.
    Normalement l'approche correcte est une table (et une seule) avec une clef externe.

    Sinon pour répondre à ton problème (que je ne cautionne pas du tout) :

    1) tester si la table existe
    2) si oui n'ouvrir
    3) sinon la créer

    test:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    Function isExistTable(matable As String)
     
    Dim db As Database
    Dim tb As TableDef
     
    Set db = CurrentDb
     
    For Each tb In db.TableDefs
        If tb.Name = matable Then
           isExistTable = True
           Exit For
        End If
    Next
     
    Set db = Nothing
     
    End Function
    La création :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    currentdb.execute "CREATE TABLE ...;"
    cf : https://msdn.microsoft.com/fr-fr/lib.../ff837200.aspx

    l'ouvrir :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    docmd.opentable matable
    Pour la création d'un formulaire via VBA... je me demande si quelqu'un a perdu du temps là-dedans.

    Cordialement,

  3. #3
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 346
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 346
    Points : 23 809
    Points
    23 809
    Par défaut
    Bonjour.

    Pour la création d'un formulaire via VBA... je me demande si quelqu'un a perdu du temps là-dedans.
    FAQ Comment créer dynamiquement un contrôle dans un formulaire et lui associer du code VBA sur un événement ?
    https://access.developpez.com/faq/?p...reerCtrlEtCode
    (il y a 2 entrées à ce propos)

    A+

  4. #4
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 015
    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 015
    Points : 24 550
    Points
    24 550
    Par défaut
    Bonjour Marot_r,

    Mon propos dans cette phrase tirée de son contexte, n'est pas d'indiquer qu'il est impossible de le faire, mais plutôt de savoir si cela à un sens vu l'entreprise chronophage.

    Créer des formulaires/états via VBA dans une application pose de nombreux problèmes :
    • On s'ampute de la protection mde/accde, ce qui est un handicap notable.
    • Le temps important à passer pour gérer les propriétés de l'objet (form/état) et ses objets sous-jacents (contrôles/position/propriétés)
    • Il faut également créer la méthode d'appel du form/état pour rendre la solution réellement dynamique.


    Si l'utilité d'un tel système est obligatoire c'est, amha, qu'il faut revoir les connaissances des briques du produit (et notamment la partie SGBDR), l'approche du problème ou simplement la bonne compréhension du cas métier.

    Voilà le sens réel de ma phrase.

    Cordialement,

  5. #5
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 346
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 346
    Points : 23 809
    Points
    23 809
    Par défaut
    Salut Loufab.

    Désolé d'avoir passé pour pédant :-).

    Je voulais que accessbeginner puisse avoir l'information si il souhaitait continuer dans cette voie même si je suis parfaitement d'accord avec toi que ce n'est pas la solution que je recommanderai.

    A+

  6. #6
    Nouveau membre du Club
    Inscrit en
    Avril 2012
    Messages
    87
    Détails du profil
    Informations forums :
    Inscription : Avril 2012
    Messages : 87
    Points : 32
    Points
    32
    Par défaut
    Citation Envoyé par loufab Voir le message
    Bonjour Marot_r,

    Mon propos dans cette phrase tirée de son contexte, n'est pas d'indiquer qu'il est impossible de le faire, mais plutôt de savoir si cela à un sens vu l'entreprise chronophage.

    Créer des formulaires/états via VBA dans une application pose de nombreux problèmes :
    • On s'ampute de la protection mde/accde, ce qui est un handicap notable.
    • Le temps important à passer pour gérer les propriétés de l'objet (form/état) et ses objets sous-jacents (contrôles/position/propriétés)
    • Il faut également créer la méthode d'appel du form/état pour rendre la solution réellement dynamique.


    Si l'utilité d'un tel système est obligatoire c'est, amha, qu'il faut revoir les connaissances des briques du produit (et notamment la partie SGBDR), l'approche du problème ou simplement la bonne compréhension du cas métier.

    Voilà le sens réel de ma phrase.

    Cordialement,

    loufab je suis intéressé par ton autre method. Si tu peux me l'expliquer je serai heureux!!!. Je tatonne encore sur access, ça fait 5 ans que je l'avais pas utilisé et j'avoue beaucoup de chose ont change depuis access 2010

    merci bien. Je suis sur access 2013

  7. #7
    Nouveau membre du Club
    Inscrit en
    Avril 2012
    Messages
    87
    Détails du profil
    Informations forums :
    Inscription : Avril 2012
    Messages : 87
    Points : 32
    Points
    32
    Par défaut
    a l'heure actuelle, j'ai rentré me données dans plusieurs tables et je me rends compte oui, quil me faudra avec cette method autant de formulaires... ce qui est loin d'être viable. donc oui une autre solution m'irait bien.

    Mon problème en gros se resume à ça... j'ai plusieurs champs pour décrire un objet. Certains champs sont simples, il suffit de rentrer des valeurs uniques, par contre certains champs, comme le champ hardpoint sont en fait des tables (ils sont sous forme de tableau sur ma fiche ou je prends mes données). Encore j'aurais pu encastrer des tableaux dans des champs ça serait simple....D'ou ma première idée de base de faire plusieurs tables avec un bouton dans mon formulaire qui ferait apparaitre ces tables...Mais non car je me rends compte qu'il me faudra autant de formulaire que dobjets en fait...ce qui nest pas une solution...

    Je me permets donc de faire appel à votre savoir légendaire!!!

    Si je peux éviter trop de VBA ce serait super. ce nest pas un langage que je maîtrise des masses

  8. #8
    Nouveau membre du Club
    Inscrit en
    Avril 2012
    Messages
    87
    Détails du profil
    Informations forums :
    Inscription : Avril 2012
    Messages : 87
    Points : 32
    Points
    32
    Par défaut
    pour plus de precision voila les données

    omme vous voyez,

    File name correspond a un champ, ainsi que template, comments, major role, minor role et hardpoints.

    Pour tous les champs sauf hardpoints, les données sont uniques donc jusque là c simple.

    Le problem survien au niveau de hardpoints. comme vous voyez le champs hardpoints contient lui meme un tableau de données. Cest la que ça se complique pour moi. Comment représenter ce tableau dans un champ unique de mon formulaire???
    Images attachées Images attachées  

  9. #9
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 015
    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 015
    Points : 24 550
    Points
    24 550
    Par défaut
    pas de problème Marot_r.

    Concernant le problème et au vus du tableau de données une simple table suffit :

    Table Hardpoints

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Id_Hardpoint
    Id_vehicule (la fameuse clef externe ou étrangère)
    HardPointName texte(5)
    Symetrie texte(20)
    x_value reel simple
    y_valeur reel_simple
    z_value reel_simple
    Tu crées un onglet dans lequel tu mets un sous-formulaire avec en source cette table.
    La liaison se fait via les propriétés champ père/champ fils avec id_vehicule / N° voiture

    C'est tout.

    Pour chaque véhicule tu auras ton tableau avec les hardpoints de ce véhicule.

    Cordialement,

  10. #10
    Nouveau membre du Club
    Inscrit en
    Avril 2012
    Messages
    87
    Détails du profil
    Informations forums :
    Inscription : Avril 2012
    Messages : 87
    Points : 32
    Points
    32
    Par défaut
    Rapide et efficace

    Merci Loufab

    tu es un chef

  11. #11
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 015
    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 015
    Points : 24 550
    Points
    24 550
    Par défaut
    si c'est clos tu peux cliquer sur le bouton adéquat.
    Merci.

  12. #12
    Nouveau membre du Club
    Inscrit en
    Avril 2012
    Messages
    87
    Détails du profil
    Informations forums :
    Inscription : Avril 2012
    Messages : 87
    Points : 32
    Points
    32
    Par défaut
    Loufab, quelqu'un l'a déjà fait apparemment

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 04/11/2009, 19h18
  2. Réponses: 8
    Dernier message: 14/02/2008, 18h04
  3. [Mail] bouton appelle une fonction
    Par man123 dans le forum Langage
    Réponses: 2
    Dernier message: 15/11/2005, 19h35
  4. [base de données]partage d'une base de données
    Par Scrusher dans le forum JDBC
    Réponses: 4
    Dernier message: 02/06/2004, 13h33
  5. base de données objet appelée ozone
    Par enti dans le forum Autres SGBD
    Réponses: 3
    Dernier message: 01/03/2004, 08h28

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