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 :

Formulaires/sous-formulaires de saisie (et de consultation à terme) [AC-2010]


Sujet :

Access

  1. #1
    Candidat au Club
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Mars 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur commercial

    Informations forums :
    Inscription : Mars 2017
    Messages : 5
    Points : 4
    Points
    4
    Par défaut Formulaires/sous-formulaires de saisie (et de consultation à terme)
    Bonjour à tous

    tout d'abord, merci de m'excuser si la réponse à ma question est déjà disponible, mais après avoir écumé tutos et forums, je m'arrache les quelques cheveux qu'il me reste.

    Je travaille dans une grande entreprise de transport. A terme, je veux mettre à disposition cet outil pour les collègues. Il y aura donc une partie admin, et une partie navigation. Vous pourriez me répondre de m'adresser à notre service informatique mais :

    - ils n'ont jamais le temps (d'ailleurs, ils sont plus chefs de projet que développeurs, ou je ne connais pas les bonnes personnes)
    - je me suis mis à Access sur mon temps perso, confronté comme beaucoup à l'impossibilité de gérer une grande quantité d'info avec Excel. Et maîtriser cet outil puissant ne peut être qu'un gros plus personnel.

    Pour ces raisons, j'aimerais bien comprendre mon (mes?) erreur(s), afin de ne pas les renouveler dans le futur. Peut-être est-ce trop ambitieux et ne peux être fait qu'avec du code, dans ce cas, Access n'est pas pour moi. Je peux éventuellement gérer les macros, mais guère plus.

    Dans notre activité, nous proposons des solutions personnalisés de transport à nos clients. Vous avez peut-être déjà reçu un colis par nos soins (et j'espère que tout s'est bien passé).
    Nous gérons donc beaucoup de transporteurs et de produits différents.

    J'ai tenté pour schématiser de construire ma bdd de la façon suivante:

    - un transporteur à des hubs, des employés, un réseau, et assure les mêmes prestations à l'origine quelque soit le pays de destination (à destination, cela dépend du produit sélectionné). Donc une table pour chacune de ces familles, et en créant les bonnes relations, cela a l'air de fonctionner correctement.

    - un produit est composé de plusieurs caractéristiques (dimensions etc). J'ai tenté de regrouper les différents détails par famille, afin d'alléger les tables. J'ai donc créé une table produits qui est composée de quelques grandes caractéristiques, et des clés étrangères de mes différentes tables (qui elles ont leur ID en clés

    - et j'ai créé une table de jonction. Cette jonction relie les produits avec les transporteurs. En effet, un produit peut être proposé par plusieurs transporteurs (pour une même destination, les colis peuvent arriver de plusieurs pays). D'où le choix d'une table de jonction. J'ai essayé avec 2 ou 3 clés primaires (un NumAuto), mon problème ne vient pas de là apparemment.


    J'ai voulu créer un formulaire Produit, qui regroupe les caractéristiques principales et les ID des différentes catégories, le détail des sous-catégories étant regroupé dans un sous-formulaire à onglet.
    Ensuite, j'ai essayé de créer un formulaire avec les contrôles de ma table de jonction. Et je souhaite incorporer le sous-formulaire produit créé précédemment pour pouvoir créer/mettre à jour les différentes combinaisons.

    J'ai correctement (enfin, je crois...) paramétré les champs pères/fils, en indiquant que la source était le sous-formulaires (quand je veux faire l'inverse, refus catégorique d'Access. Mais lorsque j'essaie de renseigner les détails, l'enregistrement n'est pas pris en compte (j'ai pourtant paramétré sur entrée de données). Ca ne marche pas plus en ce qui concerne les mises à jour.

    Voyant que cela ne marchait pas, j'ai ensuite essayé avec le générateur de requête de renseigner ces ProduitsDétailsID en les faisant 'piocher' le Contrôle correspondant dans les sous-formulaires. Les champs sont bien renseignés avec le numéro auto mais ne s'enregistrent pas.
    J'ai pensé à un problème père-fils, mais avec, cela boucle et m'enregistre un sous-détail dès que j'arrête d'écrire.

    Quand je rentre manuellement la combinaison des clés primaires dans ma table de jonction, je peux naviguer, mais j'aimerais bien pouvoir saisir/mettre à jour via les formulaires.
    En désespoir de cause, j'écris ce message. J'espère avoir été clair, je n'ai pas mis de screenshot mais au besoin, je peux en envoyer.

    Merci d'avoir pris le temps de me lire, et éventuellement de me répondre.
    je pars quelques jours pour prendre l'air (ça va me faire du bien après ces jours à essayer de faire marcher le bouzin). Pardon d'avance du délai en cas de réponse à mon post.

  2. #2
    Modérateur

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

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

    Quand tu peux poste une copie d'écran de tes tables et relations.

    Sinon bâtir une application surtout quand on débute peut être assez long et prenant ET frustrant.
    As-tu regardé si il n'existait pas sur le marché des logiciels qui répondrait à ton besoin ?

    A+

  3. #3
    Candidat au Club
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Mars 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur commercial

    Informations forums :
    Inscription : Mars 2017
    Messages : 5
    Points : 4
    Points
    4
    Par défaut screenshot tables
    merci de la réponse.
    Effectivement, ça peut être très frustrant, mais c'est ce qui en fait le charme.
    Je pensais qu'Access était parfait pour remplir le rôle de base de connaissances, pour alimenter et mettre à jour les info. Je n'en suis pas encore à en faire l'outil central de la boîte, qui sorte les offres, assurent la facturation et la compta . Mais j'ai peut-être vu un peu grand (la faute des tutos, ça, en 5 minutes, tout marche nickel).

    je joins une copie d'écran de mes tables et de leurs relations (j'epère correctement)
    Donc un produit avec ses composants, un transporteur, et une table de jonction qui normalement doit relier tout ça (avec comme clé primaire la combinaison des 2 clés primaires produit et transporteurs

    Nom : tables_relations.png
Affichages : 194
Taille : 99,4 Ko

    et une copie d'écran du formulaire que j'essaie de bâtir (j'ai esayé de montrer les relations père-fils entre les champs SizeAndWeightID.

    Nom : form_1.png
Affichages : 148
Taille : 63,4 KoNom : form_2.png
Affichages : 161
Taille : 58,0 Ko

    j'aimerais vraiment comprendre d'où vient l'erreur, j'ai l'impression de toucher au but, ce qui est effectivement TRES frustrant

    merci d'avance (et je sollicite déjà ton indulgence si la réponse est évidente)
    Images attachées Images attachées  

  4. #4
    Modérateur

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

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

    Tu voudras peut-être masquer le logo de compagnie dans tes copies d'écran.
    Les compagnies sont souvent tatillonnent sur l'usage de leur image.

    Sinon, je pense qu'il y a un léger problème de conception.

    Tel que c'est là tu as créé des listes de référence telle que tblProductMisc (les 7 tables à gauches).
    Ce que tu as dis c'est que tblProduct est en partie "composé" des informations standards provenant de tes tables de référence.

    Est-ce bien ce que tu voulais ?

    A+

  5. #5
    Candidat au Club
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Mars 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur commercial

    Informations forums :
    Inscription : Mars 2017
    Messages : 5
    Points : 4
    Points
    4
    Par défaut
    bien vu pour le logo. Je vais voir si je peux éditer le message.

    chaque produit est différent. Il va avoir des dimensions différentes, un poids maxi différent, un nombre de tentative de livraison différentes.
    Dans certains cas, c'est vrai, d'où que vienne le colis, il peut y avoir les mêmes services à destination. Mais il peut y avoir d'autres alternatives pour une même destination.
    donc pour ne pas créer une méga-table, j'ai pensé stocker les infos dans des tables séparées, et me servir plus tard de requêtes pour qu'en fonction du produit, la bonne combinaison de 'composants' soit affichée.
    et me servir d'une table de jonction pour avoir la souplesse dans les différentes possibilités.

    Me serais-je trompé?

  6. #6
    Modérateur

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

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 365
    Points : 23 835
    Points
    23 835
    Par défaut
    Me serais-je trompé?
    Oui mais vraiment pas de beaucoup.

    La solution est de faire (je vais donné l'exemple sur 1 seule table mais c'est vrai pour les 6 autres).

    tblProductMisc
    ProductMiscID
    ProductID
    Autres champs pour les infos de type Misc

    et il faut faire les relations de tblProduct vers tblProductMisc sur le champ ProductID.

    Là tu vas pouvoir entrer les informations "Misc" spécifiques de ce produit.

    Pour le découpage en tables annexe (les 7 à gauche) si tu as une relation 1 pour 1 (c-à-d que pour TOUS les enregistrements si tu as une info dans une table tu as une info dans l'autre table) habituellement on ne crée pas de table séparée.
    Certes cela peut faire une table avec beaucoup de champs mais cela facilite la vie en évitant des jointures qui sont assez "chères" en temps de calcul surtout si tu as toujours besoin de toutes les informations.
    Le cas où on découpe c'est si on a besoin de plus de 255 champs.

    A+

  7. #7
    Candidat au Club
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Mars 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur commercial

    Informations forums :
    Inscription : Mars 2017
    Messages : 5
    Points : 4
    Points
    4
    Par défaut
    Mon sauveur!

    merci de l'aide, et du conseil. J'en tiendrai compte à l'avenir.
    Je pensais bien faire en aérant un peu. Et comme on ne sera pas beaucoup d'utilisateurs, et que le nombre de produits est à un moment limité, on verra si elle tient le coup.
    Sinon, je saurai quoi faire

    merci encore, je change mes formulaires, regarde que tout marche bien, et passe la discussion en résolu.

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

Discussions similaires

  1. [AC-2010] Formulaire - Sous formulaire - Sous sous formulaire
    Par meli74 dans le forum IHM
    Réponses: 1
    Dernier message: 21/04/2011, 19h35
  2. Réponses: 13
    Dernier message: 03/09/2007, 13h42
  3. Réponses: 4
    Dernier message: 11/04/2007, 18h46
  4. formulaire/sous formulaire/sous formulaire
    Par aimejielle dans le forum Access
    Réponses: 1
    Dernier message: 24/07/2006, 22h48
  5. Réponses: 1
    Dernier message: 10/07/2006, 09h15

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