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 :

Problèmes dans les formulaires [AC-2010]


Sujet :

IHM

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2014
    Messages : 31
    Points : 14
    Points
    14
    Par défaut Problèmes dans les formulaires
    Bonjour
    Je suis actuellement en stage dans un laboratoire, et celui-ci aimerai une application sous Access permettant de gérer leurs clients et leurs matériels

    Ils font des interventions chez différents clients, et ils ont besoin de matériels pour faire cela. A chaque intervention, il peut y avoir un ou plusieurs matériels de même types, mais aussi un ou plusieurs matériels de types différents (ex : Client A a besoin de 3 sondes, Client B a besoin de 2 sondes et 4 préleveurs)
    Il faut aussi gérer si le matériel est utilisable ou non (ex : La sonde S03 est cassée, donc elle ne doit pas apparaître dans la liste des matériels choisissables (Nouveau mot ))

    Je pensais créer une table client, et aussi une table matériel ce qui permettrait d'être chacun en relation les uns avec les autres, mais je vois pas comment ça marche


    J’espère que c'est assez clair, sinon j'essayerai d’être plus explicite
    Merci de vos réponses
    Cordialement

  2. #2
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 281 907
    Points
    281 907
    Par défaut
    Bonjour,

    Tu devrais t'intéresser à la notion de formulaire père/fils, par exemple en lisant ceci : http://claudeleloup.developpez.com/t...us-formulaire/
    SVP ne m'envoyez pas de messages privés pour poser des questions techniques, vous n'aurez pas de réponse !

  3. #3
    Membre régulier
    Femme Profil pro
    emploi
    Inscrit en
    Mars 2014
    Messages
    138
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : emploi

    Informations forums :
    Inscription : Mars 2014
    Messages : 138
    Points : 99
    Points
    99
    Par défaut
    Bonjour à toi,


    Ton projet n'est pas très compliqué du moins le départ. Si tu veux que nous t'aidions, il faudra que tu mettes la main à la pâte et que tu commences par créer quelque chose... Le lien de Claude est très instructif et te permettra déjà de savoir comment établir tes relations.

    Dans l'idée (Claude rectifiera au besoin si je dis une bêtise ):

    Ils font des interventions chez différents clients, et ils ont besoin de matériels pour faire cela
    Création d'une table "clients" et une table "interventions" avec relation 1 à plusieurs. Une table "matériel" en relation 1 à plusieurs avec la table "interventions". (Pour mettre tout cela en relation il te faudra un champ qui le permette par exemple dans ta table clients, tu auras un numéro auto "ID_Client" qui sera en lien avec un champ "ID_Client_FK" (pense bien à le mettre en numérique) qui lui sera dans ta table "intervention". Tu feras pareil pour la relation "interventions"/"materiel" (ID_Intervention en num auto dans la table "interventions" et ID_Intervention_FK en numérique dans la table "matériel").

    Ensuite il te faudra créer le formulaire principal clients et mettre en sous formulaire le formulaire interventions. Puis le formulaire materiel qui sera lui même un sous formulaire du sous formulaire interventions.

    Je pense que jusque la déjà tu auras un peu de travail

    Il faut aussi gérer si le matériel est utilisable ou non
    Pour cela ça se complique un tout petit peu, je verrais une piste en utilisant du code mais.... peut être il y a plus simple. On revoit la question une fois que tu en seras déjà à ce niveau...


    Bon courage.

  4. #4
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2014
    Messages : 31
    Points : 14
    Points
    14
    Par défaut
    Voila tout ce que j'ai pour le moment
    Nom : Tables et formulaire.png
Affichages : 125
Taille : 117,9 Ko

    J'ai suivi le conseil de Claude, et j'ai regardé un peu son tuto

    Par contre une fois que je suis la, je vois pas comment faire pour que quand j'enregistre un nouveau client, dire qu'il aura besoin de 3 sondes (n'importe lesquelles) et que quand on doit faire une intervention, vérifier qu'il y ait bien les 3 sondes disponibles.

    Il y a une relation entre client et intervention avec N°Client, et entre matériel et intervention avec N°Materiel
    J'espere que la qualité de l'image est pas trop moche, j'ai essayé de tout regrouper.
    Si il faut, je le ferai en plusieurs parties

  5. #5
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2013
    Messages : 72
    Points : 68
    Points
    68
    Par défaut
    Bonjour bonjour!

    En effet l'application que tu cherches à faire n'est pas bien compliquée. Néanmoins tu as plutôt intérêt de partir sur de bonnes bases (dans le cas où l'application évolue avec le temps).

    Selon moi DefaultUser01 est presque dans le juste pour les tables et relations. Il y a juste encore le fait de devoir choisir l'état du matériel dans une liste, elle-même modifiable qui impliquerait une table Etats supplémentaire liée à la table Materiels. Et comme tu veux pouvoir utiliser plusieurs outils différents (dont le nombre de chaque outils peut aussi varier), il te faudra une autre table intermédiaire Utilisation_Materiel entre Interventions et Materiels.

    Au final ça te donne ça pour ton MLD (si je ne me suis pas trompé biensûr^^) :

    Nom : MLD_Labo.png
Affichages : 150
Taille : 22,7 Ko


    Jurta

  6. #6
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2013
    Messages : 72
    Points : 68
    Points
    68
    Par défaut
    Le champ NomClient est inutile car tu as déjà le champ N°CLient qui désigne l'enregistrement du client qui lui possède le nom. Par contre je vois que tu as shooté la clé primaire de ta table Intervention et là grosse erreur!

    M'est avis qu'il te faudrait te faire un tuto sur les bases de la création de base de données avant de t'attaquer à cette application sans quoi tu risque de ne pas savoir ce que tu fais..


    Jurta

  7. #7
    Membre régulier
    Femme Profil pro
    emploi
    Inscrit en
    Mars 2014
    Messages
    138
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : emploi

    Informations forums :
    Inscription : Mars 2014
    Messages : 138
    Points : 99
    Points
    99
    Par défaut
    Bonjour,


    Tu sembles avoir bien commencé.
    Tu devrais changé l'affichage de ton sous formulaire: pour cela, tu ouvres ton formulaire matériel directement (sans passer par son formulaire père) et dans les propriétés de celui ci à l'onglet format, affichage par défaut, tu pourras lui attribuer un affichage plus approprié je pense tel que formulaire double affichage.
    Pour la suite, il te faudra créer un ou plusieurs jeux de sous formulaires... Jurta t'a donné de bonnes pistes également concernant l'utilisation de matériel disponible ou non mais cela sera un peu plus compliqué pour toi j'imagine... Prends bien ton temps

    Idéalement il te faudrait suivre un tuto comme l'a suggéré Jurta et tu reviens nous voir en cas de difficulté; non pas que nous ne voulions pas t'aider mais simplement parce que sans tutos, tu risques de bloquer régulièrement sur des choses peut être simple et du coup rallonger le post sur beaucoup de pages


    Courage.

  8. #8
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2014
    Messages : 31
    Points : 14
    Points
    14
    Par défaut
    Non non, il y a bien une clé primaire (que j'affiche pas car on en a pas besoin, c'est un N°intervention <NumAuto>)
    Nom : Table Intervention.png
Affichages : 110
Taille : 136,1 Ko
    Voila cette fameuse table

    Et voila mes relations pour le moment
    Nom : Table Intervention.png
Affichages : 113
Taille : 103,1 Ko
    J'avais rajouté le CodeMatériel et NomClient, car il veut pas s'afficher dans mon formulaire (j'ai du louper une étape je pense)
    Mais même comme ça, ça ne marche pas non plus ^^

  9. #9
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2014
    Messages : 31
    Points : 14
    Points
    14
    Par défaut
    Tu devrais changé l'affichage de ton sous formulaire: pour cela, tu ouvres ton formulaire matériel directement (sans passer par son formulaire père) et dans les propriétés de celui ci à l'onglet format, affichage par défaut, tu pourras lui attribuer un affichage plus approprié je pense tel que formulaire double affichage.
    Je viens de regarder, mais je ne comprends pas très bien ce que ça fait, surtout que maintenant, il ne m'affiche aucune valeur (j'ai encore du me planter dans ma requête SQL)

  10. #10
    Membre régulier
    Femme Profil pro
    emploi
    Inscrit en
    Mars 2014
    Messages
    138
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : emploi

    Informations forums :
    Inscription : Mars 2014
    Messages : 138
    Points : 99
    Points
    99
    Par défaut
    Voici un screen ou j'ai entouré la propriété dont je t'ai parlé:
    Nom : Sans titre1.png
Affichages : 112
Taille : 130,6 Ko

    Pour infos cela montre la propriété de mon formulaire parent principal (formulaire clients).
    Mon sous formulaire facture est en affichage double (vu sur un tuto).
    Mon sous formulaire de détails facture est en affichage continu (attention celui la est un formulaire tabulaire ajouté en tant que formulaire déjà existant, je l'ai donc créé au préalable avec l'assistant de création formulaire).

    J'espère que cela t'aidera.

  11. #11
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2013
    Messages : 72
    Points : 68
    Points
    68
    Par défaut
    À mon avis tu es partis un peu vite.

    Je te conseil de commencer par avoir tes tables et relations en ordre avant de te lancer dans les requêtes et les formulaires. (je te dis pas ça pour rien, ça fait 6 mois que j'ai repris une appli ACCESS dont la base (tables, relations, nomenclature) était complètement anarchique et cela n'a de loin pas été une partie de plaisir^^')

    Avec tes tables et relations actuelles tu ne peux pas utiliser plus d'un matériel par intervention et leur état n'est toujours pas mentionable..

    Une fois ceci rectifié, explique nous précisément ce que tu as envie que ton formulaire Clients fasse et là je pense que l'on pourra t'aider plus efficacement

    Jurta

  12. #12
    Membre expert
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2012
    Messages
    1 871
    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 871
    Points : 3 451
    Points
    3 451
    Par défaut
    Bonjour toshiro74,

    Je crois que tu devrais écouter jurta. Avec ton modèle de données il te sera impossible de faire :
    Il faut aussi gérer si le matériel est utilisable ou non (ex : La sonde S03 est cassée, donc elle ne doit pas apparaître dans la liste des matériels choisissables (Nouveau mot ))
    Je suppose qu'une même sonde peut-être utilisée dans plus d'une intervention si les interventions ne sont pas simultanées. Donc si c'est le cas le besoin d'une notion de temps.

    La base du succès de ton application repose sur le modèle de données.

    Bonne chance
    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

  13. #13
    Rédacteur/Modérateur
    Avatar de Jeannot45
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2004
    Messages
    3 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 871
    Points : 8 489
    Points
    8 489
    Par défaut


    En lisant le fil de a discussion, je suis totalement d'accord avec Jurta. Commence par lire les deux tutos ci-dessous et tu demarreras d'un bon pied

    Access - Les Bases : Introduction et Conception
    Comprendre les jointures dans Access

    Bonne lecture
    Jeannot

    Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., Sources VBA

    Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre

  14. #14
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2014
    Messages : 31
    Points : 14
    Points
    14
    Par défaut
    D'accord merci à vous

    J'ai deja eu quelques bases rapides en cours, mais cela remonte a un moment ^^
    et on a jamais utilisé la gestion du temps
    Seulement quelques requetes en SQL, et faire un ou deux formulaires d'ajout,modification,suppression

    Donc je me retrouve un peu perdu
    Je m'en vais de ce pas lire les tutos

  15. #15
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2014
    Messages : 31
    Points : 14
    Points
    14
    Par défaut
    Bon j'ai demandé, et pour le moment, j'ai pas besoin de répertorier chaque matériel un par un, juste dire la quantité utilisé par intervention, avec quels types de matériels (ex : 5sondes et 3 préleveurs)

    Nom : Sans titre.png
Affichages : 104
Taille : 9,5 Ko
    Donc j'ai rajouté la date dans la table intervention

    Je pense que comme cela, ça devrait fonctionner.

  16. #16
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2013
    Messages : 72
    Points : 68
    Points
    68
    Par défaut
    Ah! Ba ça à l'air d'aller déjà mieux!

    Alors le truc c'est qu'il y aura plusieurs entrées dans la table interventions pour chaque intervention (une par outil utilisé)donc là soit tu rajoutes un champ genre ref_intervention ou tu te sers des champs dateDebut, dateFin et N°Client pour les distinguer les unes des autres mais à ce moment, ça impliquerait que tu ne pourras pas effectuer deux interventions distinctes en même temps chez le même client.

    Jurta

  17. #17
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2014
    Messages : 31
    Points : 14
    Points
    14
    Par défaut
    Nom : Sans titre.png
Affichages : 91
Taille : 4,3 Ko

    Par contre, il me faudrait la possibilité que pour une intervention, on puisse prendre plusieurs types de materiels, car la, on ne peut avoir qu'un seul materiel avec une quantité voulue pour une intervention
    Il faut créer une table intermédiaire? Car je vois pas du tout comment faire la.


    Merci et désolé encore de vous déranger autant

  18. #18
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2013
    Messages : 72
    Points : 68
    Points
    68
    Par défaut
    J'y ai répondu juste au-dessus (08h38)^^

    Mais en effet tu peux également te servir d'une table intermédiaire (Interventions et Utilisation_Materiel dans le modèle que je t'ai affiché le 02.05.2014).

    Jurta

  19. #19
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2014
    Messages : 31
    Points : 14
    Points
    14
    Par défaut
    ah oui en effet, jviens de comprendre ^^
    Sinon je voulais dire qu'on ne peut pas faire deux intervention en même temps chez le même client
    Donc je vais voir avec une autre table alors ce que ca donne

  20. #20
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2013
    Messages : 72
    Points : 68
    Points
    68
    Par défaut
    Okai ça joue!

    Et sinon pour le Formulaire, je te conseils de commencer par un formulaire vierge dans lequel tu y met deux ss-formulaire en mode tableau et un champ:
    1. Le premier ssFormulaire qui tirera ses données d'une requête sur les tables Interventions et Clients (champs Interventions.ref_interventions, Clients.nom, Clients.prénom, Interventions.date_debut,Interventions.date_fin, Interventions.description et Interventions.ID)
    2. Le deuxième qui lui pointera sur une requête sur les tables Utilisation_Materiel et Materiel (champs Materiel.Nom, Utilisation_Materiel.Nb_Materiel et Utilisation_Materiel.ID_Intervention_FK) avec la petite particulatité que dans le Critère de Id_Intervention_FK il te faut mettre le chemin vers le champ ci-dessous soit [Formulaires]![MonFormulairePrincipal]![ID_Interventions].
    3. Et le champ que tu peux nommer ID_Interventions et qui recevra l'ID de l'enregistrement actif du premier sous-formulaire.


    Ensuite il te faudra manger un petit peu de code:
    • Tu ouvres ton formulaire en mode Création (important! création et pas page) et tu sélectionne ton ss-formulaire Interventions en cliquant deux fois sur le petit carré en haut à gauche de ton formulaire (jusqu'à ce que le dit carré soit sélectionné Pièce jointe 144953).
    • Puis tu ouvres la feuille de propriété et tu te rends sur l'onglet Événement puis dbl-click dans la case de l'événement Sur double clic (le texte [procédure événementielle] devrait apparaitre).
    • Suite à quoi tu clic sur le bouton Pièce jointe 144954 qui va t'ouvrir l'éditeur de code d'ACCESS avec le curseur dans la bonne fonction.
    • Là il te suffit d'entrer la ligne suivante:
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      [Forms]![MonAutreSsFormulaire].Requery
    • Puis effectue la même chose avec l'événement Sur activation en plassant le code suivant:
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      [Forms]![MonFormulairePrincipal]![ID_Intervention] = Me.ID



    PS: Pour peaufiner tu peux réduire la largeur des colonnes inutiles (ID et ID_Intervention_FK) à 0 en mode Page et également mettre la propriété Visible du champ ID_Interventions à Non.

    Voilà ma méthode! Pas dit que ce soit la meilleure donc qu'on me reprenne s'il y a plus facile ou plus performant et toshiro n'hésite pas à poser des questions si il y a un point qui t'échappe.

    Jurta

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 3 123 DernièreDernière

Discussions similaires

  1. Problème d'accents dans les formulaires
    Par manudwarf dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 11/11/2010, 10h28
  2. [AC-2010] Problème d'ajout dans les formulaires
    Par roblescriso dans le forum IHM
    Réponses: 2
    Dernier message: 18/10/2010, 15h58
  3. [MySQL] les apostrophe me cause un problème dans un formulaire
    Par pierrot10 dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 22/10/2005, 20h28
  4. [HVMenu] problème dans les pages ASPX (urgent svp)
    Par hatembr dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 13/01/2005, 09h37
  5. []Problème avec les formulaires Outlook
    Par davidinfo dans le forum Outlook
    Réponses: 6
    Dernier message: 05/12/2002, 09h59

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