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 :

Ajout dans Sous-Formulaire => Champ père ignoré


Sujet :

IHM

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 5
    Points : 3
    Points
    3
    Par défaut Ajout dans Sous-Formulaire => Champ père ignoré
    Bonjour à tous,

    C'est la première fois que je débute une discussion, car d'habitude je trouve en recherchant, mais là je suis totalement perdu...

    Voila mon problème :
    J'ai 2 tables, l'une contient des projets, l'autre des machines.
    A un projet, j'associe plusieurs machines, grâce à une troisième table, qui prend les clé primaire du projet et de la machine (avec des info en + sans importance).

    J'ai donc crée un formulaire, sur la table Projet, avec un sous-formulaire, qui permet d'ajouter des machines au projet actuel.
    Le champ père pointe bien sur la clef primaire du projet, et le champ fils sur le champ qui correspond au projet dans la troisième table. Il vient d'une requête sur le 3ème table, en rajoutant des info spécifique aux machines (Vous me suivez ?)

    On choisit à l'aide d'une liste déroulante la machine que l'on veut. Et normalement tout va bien, mais là, j'ai un gros soucis (que je pense stupide...)

    Dans la table qui lie le projet à la machine, il me rajoute bien la machine (avec les info en +), mais le champ qui correspond à la clef du projet (le champs fils) est vide ! Du coup, rien ne marche !

    En fait, tout fonctionnait lorsque j'utilisais un ID (pour le projet) automatique (Numéro Auto) avec Access, mais là j'ai un code déjà unique (type Texte). J'ai fais tous les changements et ça ne prend pas... J'ai comme message d'erreur, à l'ajout d'un enregistrement dans le sous-formulaire :
    "Valeur incorrecte pour ce champ" (Comme si j'avais mis du texte dans du numérique etc...) j'ai regardé partout et pourtant tout est bien ! Les champs père/fils sont du même type etc...

    Je vois pas du tout où est le problème

    D'ailleurs, lorsque je remplis moi-même le champ à la main, il arrive à le relire dans le sous-formulaire...


    Quelqu'un aurait-il une solution à proposer s'il-vous plait ?
    Merci beaucoup

  2. #2
    Expert éminent sénior

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 491
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 491
    Points : 16 399
    Points
    16 399
    Par défaut
    Bonjour

    Si j'ai bien compris tu veux ajouter des enregistrements dans la table3.

    Dans ce cas le sous formulaire doit afficher la table et non une requête.

    Ta liste déroulante peut afficher 2 colonnes Id machine + nom par exemple (voir plus), l'ID alimentant un des deux champs de la clé primaire de cette table3, l'autre étant la relation fils/père avec le formulaire.
    TU peux afficher d'autre infos machines dans des champs indépendants par requête si nécessaire

  3. #3
    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


    Pourrais-tu joindre un extrait de ta base, car cela me semble confus pour apporter une réponse concrète ?

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Bonjour, merci de vous interresser à mon cas

    Alors pour répondre à 78chris, en mettant la table en donnée au lieu de la requête, je me retrouve avec un formulaire en "feuille de donnée" et je n'arrive pas à le remettre en mode continu (ni à ajouter des contrôles :/).
    De plus, avant de faire mes modifications, il fonctionnait très bien avec la requête :/ (ce que je comprend encore moins...)

    Pour répondre à Jeannot45, voici comment est faite ma base :
    TABLE Projet :
    - Code Projet (type Texte, clef primaire)
    - Nom Projet (type Texte)
    TABLE Machine :
    - Code Machine (type Numérique (réel simple), clef primaire)
    - Nom Machine (type Texte)
    - Puissance unitaire (type Numérique)
    TABLE RelationProjetMachine :
    - ID (type NuméroAuto, clef primaire)
    - Code Projet (type Texte, en relation avec Code Projet de la table Projet)
    - Code Machine (type Numérique, en relation avec Code Machine de la table Machine)
    - Coordonné X (Type Numérique)
    - Coordonné Y (Type Numérique)

    => J'ai donc un formulaire, basé sur la table Projet, pour y rentrer de nouveaux projets.
    Dedans, il y a le sous-formulaire en question. Il pointe sur une requête :
    Correspondance Machine
    - Code Projet (tiré de la table RelationProjetMachine)
    - Code Machine (tiré de la table RelationProjetMachine)
    - Puissance Unitaire (tiré de la table Machine)
    - Coordonnée X et Y (tiré de la table RelationProjetMachine)

    Comme ça, en rajoutant une machine, je peux voir sa puissance dans le sous-formulaire. Et normalement, il rentre les autres informations dans la table RelationProjetMachine.
    D'ailleurs c'est bien ce qu'il fait ! Mais le champ "Code Projet" reste vide, en mettant l'erreur de type de donnée : "Valeur incorrecte pour ce champ"
    Du coup, la table RelationProjetMachine est bien mise à jour, sans le "Code Projet", du coup impossible de savoir à quel projet la machine est rattachée

    Une dernière info, dans le sous-formulaire, il y a toutes les zones de textes correspondant aux différents champs de la requete "Correspondance Machine", sauf celui ci : "Code Projet", car normalement, il doit prendre la valeur automatiquement du champ père.
    D'ailleurs, si je le met, et que je rentre une nouvelle machine, il ne se remplit pas (contrairement à "Puissance Unitaire" qui se remplit automatiquement).

    Voila, j'espère avoir été le plus clair possible, et merci pour vos réponses.

    PS : les tables sont beaucoups plus remplies en informations, mais je ne préfère pas compiquer la chose avec des info inutiles ^^

    EDIT

    En mettant la table RelationProjetMachine pour les données de mon sous-formulaire, ça ne fonctionne toujours pas... Le champ "Code Projet" reste vide

  5. #5
    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


    J'ai refait une petite base suivant le descriptif que tu as donné.
    Tu verras que le formulaire principal est indépendant et donc non rattaché à la table T_projet.

    Les champs Père et Fils fonctionnent normalement

    Bonne continuation
    Fichiers attachés Fichiers attachés

  6. #6
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Re-bonjour, merci d'avoir pris le temps de faire ce petit exemple.

    J'ai exactement la même chose, à la différence près que mon formulaire est rattaché à ma table Projet, mais cela pose-t-il problème ? Je penses pas...

    Malgré tous les tests que j'ai fait, Access n'arrête pas de me dire, qu'au champ "Code Projet", de ma table "RelationProjetMachine", je met un mauvais type de donnée (Texte dans numérique, texte trop grand etc...) pourtant les champs sont bien de même type, et les relations/requêtes sont les mêmes que le test que vous avez fait...

    Je ne comprends vraiment pas

    EDIT

    A croire qu'Access m'en veut... J'ai rajouter un champ "ID"(NuméroAuto) dans la table "Projet", que j'ai fait passer en clef primaire.
    J'ai donc changer la table "RelationProjetMachine" pour que "Code Projet" soit de type Numérique, et tout les changements nécessaire pour que ça roule...
    Et ça roule...

    Maintenant le sous-formulaire fonctionne...

    Ca m'embête beaucoup d'avoir cet ID (inutile vu que j'ai déjà l'unicité dans mon "Code Projet" texte...), mais à croire que je ne peux pas faire autrement...
    Quelqu'un a une explication ?

  7. #7
    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


    Je te joins la base test modifiée. Tu n'avais pas besoin de changer ta clé primaire. Je crois que le problème venait de ta liste déroulante qui doit être indépendante.

    J'ai rebasé le formulaire sur la table T_Projet. Il te permet ainsi de créer un nouvel enregistrement. Tu trouveras également quelques procédures sur les deux champs CodeProjet et NomProjet.

    Bonne continuation.
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. Réponses: 5
    Dernier message: 26/07/2013, 15h05
  2. [AC-2002] Evénement sur sous formulaire quand champ père change.
    Par philou22 dans le forum IHM
    Réponses: 2
    Dernier message: 15/03/2010, 22h36
  3. petit souci requete ajout dans sous formulaire
    Par tibiurs dans le forum Access
    Réponses: 3
    Dernier message: 03/07/2008, 21h18
  4. Réponses: 3
    Dernier message: 09/08/2007, 13h44
  5. [numéroAuto] Ajout dans sous formulaire ?
    Par popo68 dans le forum IHM
    Réponses: 4
    Dernier message: 13/12/2006, 10h27

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