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 :

SS Form basé sur une requete


Sujet :

Access

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    304
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 304
    Points : 94
    Points
    94
    Par défaut SS Form basé sur une requete
    Bonjour, est-il possible d'obtenir un ss form dans lequel on pourrai modifier les données, sachant que ce sous form est alimenté par une requete qui join plusieurs tables:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SQL :
    SELECT E_Controle.ref_nom, E_Controle.ref_numero, E_Controle.date_creation, flag_approbation, Ag2.Nom_agent, date_approbation
    FROM [Ref - Nom Agent] AS Ag1, [Ref - Nom Agent] AS Ag2, [Rap - Entete Controle] AS E_Controle
    WHERE Ag1.Mnemo='A' And Ag1.Mnemo=E_Controle.ref_nom And Ag1.Superviseur_mnemo=Ag2.Mnemo;
    Cette requete est enregistré dans ma base de données. Mon ss form a été crée à l'aide de l'assistant et relié à la requete.


    J'ai vérifier les propriétés du formulaire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    modif autorisé = oui
    Ajout autorisé = oui
    Pourtant les données ne sont pas modifiable, le formulaire est vérouillé!

    Pouvez-vous me dire si ce que je souhaite faire est réalisable ?

    Merci

  2. #2
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    Bonjour,

    Et elle fonctionne la requête? C'est déjà admirable parce qu'elle paraît assez bizarre, tout particulièrement la clause FROM...
    Quels sont les noms des tables concernées?

    pgz

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    304
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 304
    Points : 94
    Points
    94
    Par défaut
    Citation Envoyé par pgz
    Bonjour,

    Et elle fonctionne la requête? C'est déjà admirable parce qu'elle paraît assez bizarre, tout particulièrement la clause FROM...
    Quels sont les noms des tables concernées?

    pgz
    Salut, oui j'ai testé la requête à part et elle fonctionne, les crochets sont utilisés pour une table dont le nom contient un espace.
    EX: [Ref - Nom Agent]

    Donc le problème ne vient pas de la requête

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    304
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 304
    Points : 94
    Points
    94
    Par défaut
    bien, je pense que ce n'est pas faisable.
    Dans ce cas, quand vous devez afficher un ensemble de données en lecture écriture (se basant sur plusieurs tables) dans une même feuille, comment vous y prenez-vous si on ne peut pas faire de formulaire lié ?
    J'ai l'impression d'avoir atteint quelques limite d'Access, dites moi que je me trompe.
    Merci pour vos tuyaux

  5. #5
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    Il faut que le sfrm permette les modifs, ce qui semble être le cas ET que le contrôle de sfrm soit activé, non verrouillé.

    Si tu ne peux rien modifier dans le sfrm, il y a peut-être un pb de ce côté-là.

    pgz

  6. #6
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Pour que la requête autorise les mises à jour, il faut utiliser des jointures en Join et non des jointures plates en =

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    304
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 304
    Points : 94
    Points
    94
    Par défaut
    Citation Envoyé par Tofalu
    Pour que la requête autorise les mises à jour, il faut utiliser des jointures en Join et non des jointures plates en =
    Merci Tofalu,
    Comment je peux faire pour que Access me traduise cette requête en JOIN? Car moi je suis nul en JOIN et INNER ...
    En plus si tu as remarqué, dans ma requête, je fais une jointure portant sur une même table mais 2 champs différents.
    Merci de ton aide

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    304
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 304
    Points : 94
    Points
    94
    Par défaut
    bien,
    j'ai déja essayé de simplifier la requête afin de voir ce que ça donne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    SELECT [Rap - Entete Controle].date_creation, [Rap - Entete Controle].flag_approbation, [Rap - Entete Controle].date_approbation, [Ref - Nom Agent].Mnemo, [Ref - Nom Agent].Superviseur_mnemo, [Ref - Nom Agent_1].Nom_Agent
    FROM [Ref - Nom Agent] AS [Ref - Nom Agent_1], [Rap - Entete Controle] INNER JOIN [Ref - Nom Agent] ON [Rap - Entete Controle].ref_nom = [Ref - Nom Agent].Mnemo
    Dans cette requête, les jointures sont faite avec INNER JOIN comme tu le dis. Pourtant dans mon formulaire ce n'est toujours pas modifiable...
    As-tu une idée de pourquoi ? Merci

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    304
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 304
    Points : 94
    Points
    94
    Par défaut
    En fait, je crois que je viens de comprendre. Une requete est modifiable que si elle est conçue avec des JOINs et qu'il y a des relations entre les tables...
    Or quand je fais la jointure entre les deux même tables, il n'y a pas de relation à ce niveau...
    Mon modèle conceptuel est donc incorrect. Cependant je n'arrive pas à le modéliser correctement. Je vais exposer mon problème, peu être que certains pourront m'aider en Merise
    En fait j'ai ce qu'on appelle des rapprochements qui ont obligatoirement un opérateur mais aussi un superviseur. Ils peuvent être deux personnes différentes mais (et c'est la que ça se complique) ils peuvent très bien être la même personne... C'est à dire que l'opérateur peut être superviseur de lui-même....
    Voila les règles de gestion.
    Ce que j'ai fait(vous l'avez sans doute compris avec ma reqete) c'est les superviseur et les opérateur sont tous dans la table Ref Agent de ma requete. Les champs de la table sont les suivants:
    Ref Agent, Nom Agent, Role Agent, Superviseur
    C'est le champs Superviseur qui détermine l'Agent qui est le superviseur.
    ex:
    1) Ag1, Dupont, operateur, Ag2
    2) Ag2, Durant, Superviseur, Ag2

    l'enregistrement 1 est un opé dont le superviseur est Ag2 se trouvant dans la même table...

    Voila si quelqu'un peut m'aider à modéliser ce shéma correctement ce serait cool, et j'apprendrais à gérer ce genre de situation une bonne fois pour toutes.

    Merci aux experts Merise

Discussions similaires

  1. Réponses: 10
    Dernier message: 17/08/2010, 11h42
  2. formulaire basé sur une requete et une table
    Par gayour dans le forum IHM
    Réponses: 1
    Dernier message: 17/07/2010, 16h36
  3. Vider une table basé sur une requete
    Par piogo113 dans le forum WinDev
    Réponses: 5
    Dernier message: 21/11/2007, 16h10
  4. Réponses: 7
    Dernier message: 09/05/2007, 21h42
  5. Etat basé sur une Requete Analyse Croisée
    Par Bercud dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 08/06/2006, 16h03

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