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 :

[FORM][ACCESS2000]impossible de modifier un champ yes/No


Sujet :

IHM

  1. #1
    Membre du Club
    Inscrit en
    Avril 2007
    Messages
    116
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 116
    Points : 52
    Points
    52
    Par défaut [FORM][ACCESS2000]impossible de modifier un champ yes/No
    Salut
    Jai une form qui a pour source une requete contenant un LEFT JOIN
    parmis les champs affiche, jai un champ Yes/No en provenance de la
    table de "droite" dans la requete.
    J'aimerais que l utilisateur puisse cocher ou decocher a volonte ce champ
    yes/no. Cependant quand l'on clique sur le check box relie a ce champ,
    access dis que ce champ ne peut etre mis a jour.
    Comment faire?
    Merci a tous
    Pas d'accents sur mon clavier QWERTY !
    Merci de votre comprehension

  2. #2
    Modérateur

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

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Tu ne peux pas modifier un champ dans la partie gauche d'un LeftJoin. Quand une requète à une relation 1 à N, la partie N est généralement verrouillée.

    La seule solution que je vois, c'est faire une structure Formulaire/Sous-Formulaire.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  3. #3
    Membre du Club
    Inscrit en
    Avril 2007
    Messages
    116
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 116
    Points : 52
    Points
    52
    Par défaut Salut
    Parfaitement logique, je comprend cela.
    Je men suis doute. Jai donc remplacer mon LEFT JOIN par un INNER JOIN.
    mais jai toujours "impossible de mettre a jour le champs"
    pourtant selon ma comprehension INNER JOIN c'est une relation 1-1 ?
    Merci
    Pas d'accents sur mon clavier QWERTY !
    Merci de votre comprehension

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour

    As-tu un regroupement dans ta requête ?

    Starec

  5. #5
    Membre du Club
    Inscrit en
    Avril 2007
    Messages
    116
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 116
    Points : 52
    Points
    52
    Par défaut Pas de regroupement
    c'est une requete
    SELECT ...
    FROM table1 INNER JOIN table2 ON Condition1
    WHERE Condition2

    Jai meme modifie en
    SELECT ...
    FROM table1,table2
    WHERE Condition1 AND Condition2

    mais jai toujours un champ de table2 qui est du type yes/no
    mais impossible de le mettre a jour au travaers d'un checkbox sur la form

    Merci encore
    Pas d'accents sur mon clavier QWERTY !
    Merci de votre comprehension

  6. #6
    Membre du Club
    Inscrit en
    Avril 2007
    Messages
    116
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 116
    Points : 52
    Points
    52
    Par défaut Exemple concret
    Voila jai cree un exemple similaire a mon probleme
    2 tables, une d'elle n'a pas de cle.
    Jai fais une form pour afficher un Slect sur les 2 tables.
    Dans la table2 jai un champ yes/no, je veux pouvoir
    mettre a jou ce champ (case a cocher) a partir de la
    form.
    Merci

    Voici la requete source de la Form1
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT Table1.Id, Table1.Customer, Table2.Name, Table2.Send
    FROM Table1, Table2
    WHERE (((Table1.Customer)=[Table2].[Customer]));
    Images attachées Images attachées    
    Pas d'accents sur mon clavier QWERTY !
    Merci de votre comprehension

  7. #7
    Expert confirmé
    Avatar de vodiem
    Homme Profil pro
    Vivre
    Inscrit en
    Avril 2006
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Vivre
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2006
    Messages : 2 895
    Points : 4 325
    Points
    4 325
    Par défaut
    Salut YepAccess et les autres
    (un peu busy ces temps ci pour te répondre)
    mais voilà avec cette requete ca marche:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT Table1.ID, Table1.CUSTOMER, Table2.NAME, Table2.SEND
    FROM Table1 INNER JOIN Table2 ON Table1.CUSTOMER=Table2.CUSTOMER
    WHERE (((Table1.CUSTOMER)=Table2.Customer));
    ps: t'en qu'a faire un exemple autant nous le mettre à dispo en zip

  8. #8
    Membre du Club
    Inscrit en
    Avril 2007
    Messages
    116
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 116
    Points : 52
    Points
    52
    Par défaut Requete differente
    Bon voila j'ai essaye avec la requete de Vodiem
    [QUOTE=vodiem]
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT Table1.ID, Table1.CUSTOMER, Table2.NAME, Table2.SEND
    FROM Table1 INNER JOIN Table2 ON Table1.CUSTOMER=Table2.CUSTOMER
    WHERE (((Table1.CUSTOMER)=Table2.Customer));
    Effectivement ca marche, cependant ,je ne comprend pas 2 choses:

    dans la requete ci dessus j'ai toujours cru que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ON Table1.CUSTOMER=Table2.CUSTOMER
    etait la condition de la jointure, je ne comprend pas pourquoi le WHERE ? d'ailleurs cela marche egalement sans le WHERE .
    Deuxiemement je pense que la requete ci-dessus est equivalente a celle ci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT Table1.Id, Table1.Customer, Table2.Name, Table2.Send
    FROM Table1, Table2
    WHERE (((Table1.Customer)=[Table2].[Customer]));
    Je pensais que cela etait equivalent a un INNER JOIN ?
    Je me trompe ? Surtout que avec la seconde requete cela ne marche pas, je ne peut mettre a jour les champs a partir de la form ??
    Merci a tous
    Pas d'accents sur mon clavier QWERTY !
    Merci de votre comprehension

Discussions similaires

  1. Table modifié impossible de modifier un champ
    Par bodade dans le forum PhpMyObject
    Réponses: 10
    Dernier message: 26/03/2009, 14h19
  2. Impossible de modifier un champ par innerHTML si il a été modifié manuellement
    Par Mr. Sandwich dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 12/10/2008, 12h20
  3. Impossible de modifier le champ
    Par alainvh dans le forum Bases de données
    Réponses: 1
    Dernier message: 28/11/2006, 18h15
  4. Réponses: 8
    Dernier message: 26/07/2006, 14h50

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