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 d’enregistrement dans une requête.


Sujet :

IHM

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 102
    Points : 40
    Points
    40
    Par défaut Problèmes d’enregistrement dans une requête.
    Problèmes d’enregistrement dans une requête.
    http://cjoint.com/?fkneyN0kjX
    Bonjour, j’ai déjà requis vos aides pour construire ma base (actuellement lien : http://cjoint.com/?fkneyN0kjX)
    , destinées à un système éducatif africain. Actuellement toujours profane en ACCESS 23003, après avoir essayé plusieurs solutions j’en arrive à plusieurs tables dans ma base : certaines sont constituées de noms d’écoles, code administratif, région, département et commune déjà existants et entrés dans ces tables (dans ma base : TBLWILAYA (région), TBL MOUGHATAA (département), TBLCOMMUNE, TBLECOLE et qui servent d’identifiants de l’école pour celui qui va saisir les renseignements demandés. Les renseignements demandés majoritairement numériques sont tous des champs dans 2 autres tables TF-ENVSTRUCT et TF-EQUIPEMENTS, une 3° table TF-CALCULS est réservées pour des résultats de calculs simples types somme, pourcentages, rapports, … (constituant eux des indicateurs du système et calculés à partir des données saisies). J’ai créé une requête RF qui réunit les données déjà enregistrées (région, département, commune, école,et son code administratif, servant d’identificateur de l’établissement renseignant celui qui saisit, et les champs qui doivent être remplis, renseignés. Certains de ces champs sont des listes déroulantes courtes (Fonctionnement, Structure, Directeur, Bibliothèques, et APE, à 3-4 modalités maxi) qui vont chercher les listes dans une table TFLidenv crée pour ces choix de listes sans plus. La majorité restante sont des champs numériques que je voudrais bien faire saisir dans le formulaire sous forme de liste déroulante de 0 à 500 (table TNB crée pour ça). J’ai donc créé un formulaire RF2 pour alimenter cette requête par des saisies (tous les contrôles y sont visibles en colonne, mais pas encore organisés ni présentés correctement).
    Mon problème n° 1 est que toutes mes listes déroulantes Fonctionnement, Structure, Directeur, Bibliothèques, et APE s’affichent bien mais ne saisissent rien du tout dans la requête. Les listes déroulantes de nombres non plus, (et je voudrais bien problème n° 2, aussi qu’elles affichent 0 à l’ouverture). Comment faire pour que les données saisies dans le formulaire aillent s’enregistrer dans la requête que j’aurais ensuite à exploiter au plan national ? Merci de votre aide.

  2. #2
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 759
    Points
    7 759
    Par défaut
    Bonjour,

    Ouvre ton formulaire en mode création, affiche la fenêtre des propriétés, et dans l'onglet "Données" change le type de Recordset à "Feuille rép.dyn.(MAJ globale)"

    Une remarque : tu as choisi le champ Code comme champ de liaison entre la table TBLECOLE et les tables TF-ENVSTRUCT, TF-EQUIPEMENTS.
    Or il y a des doublons sur ce champ dans la table TBLECOLE.
    D'ailleurs il y en a aussi dans les tables TF-ENVSTRUCT et TF-EQUIPEMENTS.
    Du coup, la requête RF sort elle aussi des doublons.
    N'aurai-t-il pas mieux valu utiliser le champ IDECOLE ?

    Dans ton formulaire il y des contrôles indépendantes, c'est à dire qu'il n'ont pas de source (pas relié à un champ de la requête).
    eff-1°
    Bibliothèque
    APE

    A+

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 102
    Points : 40
    Points
    40
    Par défaut Pb enregistrement dans une requête
    Merci LedZeppII, ça marche. Par contre pour répondre à tes interessantes remarques : 1. je lie les tables avec le code administratif parce que c'est le seul identifiant qui permet de discriminer des écoles qui ont le même nom dans le pays, parfois dans le même département. 2. Maintenant que tu me dis qu'i y a des doublons sur ces codes ça m'inquiète sérieusement pour la validité ultérieure des CODE de la TBLECOLE? Qu'il y en ait sur les noms d'écoles, c'est normal. 3. Oui je n'ai pas encore rattaché tous les contrôles indépendants, rien ne t'échappe. Merci encore, et dis moi STP comment tu contrôles les doublons. Cordialement.

  4. #4
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 759
    Points
    7 759
    Par défaut
    Bonjour,

    1. je lie les tables avec le code administratif parce que c'est le seul identifiant qui permet de discriminer des écoles qui ont le même nom dans le pays
    Tu peux aussi utiliser IDECOLE comme identifiant unique dans ta base de données.

    comment tu contrôles les doublons
    Je fais une requête de ce genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT TBLECOLE.*
    FROM TBLECOLE
    WHERE (((TBLECOLE.CODE) In (SELECT Tmp1.CODE FROM TBLECOLE AS Tmp1 GROUP BY Tmp1.CODE HAVING Count(*)>1)));
    La clause In (sous-requête) filtre les doublons grace à la sous-requête
    Code sous-requête : Sélectionner tout - Visualiser dans une fenêtre à part
    (SELECT Tmp1.CODE FROM TBLECOLE AS Tmp1 GROUP BY Tmp1.CODE HAVING Count(*)>1)
    qui ne retourne que les "CODE" dont le compte de lignes est supérieur à 1.

    Tu peux utiliser l'assistant requête "trouver les doublons" pour obtenir le même résultat.

    A+

Discussions similaires

  1. [AC-2007] Problème calcul dans une requête
    Par jclm230759 dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 23/01/2014, 12h07
  2. Problème avec && dans une requête mysql
    Par jean christophe dans le forum Bases de données
    Réponses: 4
    Dernier message: 29/04/2010, 14h10
  3. Limiter un nombre d’enregistrements dans une requête
    Par nomade333 dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 16/11/2009, 12h59
  4. Réponses: 4
    Dernier message: 20/05/2008, 10h09
  5. Problème de Order by dans une requête
    Par showa dans le forum Requêtes
    Réponses: 3
    Dernier message: 03/08/2004, 15h40

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