Mise à jour d'une Table

Résolu
van M Messages postés 44 Date d'inscription   Statut Membre Dernière intervention   -  
 castours -
Bonjour a tous, Je suis débutant en Access.
J'ai une mise à jour sur une table que je n'arrive pas à effectuer. Alors voici mon problème

- J'ai une table "Panneau" avec un champ "louer" de type "oui/non"
- J'ai un formulaire "location" qui permet d'enregistrer des location de panneaux, le bouton enregistrer de ce formulaire doit mettre à jour le champ "louer" (en oui) de la table panneau
- J'ai créer une requête maj_panneau avec le code sql suivant :
UPDATE Panneau INNER JOIN Location ON Panneau.ref_panneau = Location.[Panneaux disponibles] SET Panneau.louer = Yes;

- Mon soucis est de savoir comment insérer cette requête au bouton enregistrer, j'ai essayé en faisant un clic droit sur le bouton et en choisissant "créer code événement" mais l'option ne m'aide pas

Quelqu'un pourrait m'aider , merci.

9 réponses

Résumé de la discussion

Il s'agit de mettre à jour le champ louer d'une table Panneau (Oui/Non) lorsque le formulaire Location enregistre une location et que la requête SQL associée s'exécute.
Elle consiste à intégrer la requête UPDATE Panneau INNER JOIN Location ON Panneau.ref_panneau = Location.[Panneaux disponibles] SET Panneau.louer = Yes dans la procédure liée au bouton Enregistrer.
Plusieurs échanges signalent des soucis de type de données: des champs en texte court empêchent parfois la mise à jour, puis des contraintes Date/Heure apparaissent lorsque des dates entrent en jeu.
En cas de persistance, exécuter la requête dans l'éditeur SQL d'Access permet de vérifier les erreurs et de confirmer l'exactitude des noms de champs et de la jointure.

Généré automatiquement par IA
sur la base des meilleures réponses
  1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     
    bonjour, peux-tu partager ton fichier?
    0
    1. van M Messages postés 44 Date d'inscription   Statut Membre Dernière intervention  
       
      Bon jour, ok je vous l'envoie
      0
    2. van M Messages postés 44 Date d'inscription   Statut Membre Dernière intervention  
       
      Je n'arrive pas à attaché le fichier . C'est un fichier de 2.5 Mo
      0
  2. castours
     
    https://www.cjoint.com/c/HGsqotS2ovY
    bonjour
    dans ce lien la base modifiée avec des relations.
    j'ai fait un formulaire et sous formulaire ou tu pourras enregistrer les données.un client, un panneau, et la location
    donne moi ton avis
    0
    1. van M Messages postés 44 Date d'inscription   Statut Membre Dernière intervention  
       
      Salut, désolé du retard
      Je viens de consulter ta proposition je trouve que l'idée est bonne
      Donc si je comprends bien le formulaire de base sera le F_client?
      Je vais l'exploiter en profondeur
      0
  3. castours Messages postés 2955 Date d'inscription   Statut Membre Dernière intervention   217
     
    Bonjour
    As tu regarder mon envoi
    0
    1. van M Messages postés 44 Date d'inscription   Statut Membre Dernière intervention  
       
      J'ai aussi un autre problème lié au champ datelier de la table location. Quand je met les types de données en date/heure et à chaque j'entre une date un message s'affiche pour me dire que la valeur entrer est incorrecte. As tu déjà rencontré ce problème ?
      0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. castours Messages postés 2955 Date d'inscription   Statut Membre Dernière intervention   217
     
    bonjour
    Dans la table location , il n'y a pas de champ datelier seulement date dateDebut et dateFin
    0
    1. van M Messages postés 44 Date d'inscription   Statut Membre Dernière intervention  
       
      Oui effectivement, quand je mete les champs date_debut et date_fin en type date/heure
      Ensuite impossible d'entrer une date dans ces champs
      Un message s'affiche en disant valeur non valide pour ce champ
      0
      1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588 > van M Messages postés 44 Date d'inscription   Statut Membre Dernière intervention  
         
        difficile pour nous de deviner ce que tu essaies d'encoder comme date, ni comment tu le fais, et pourquoi cela ne fonctionne pas.
        cela se produit quand tu modifies la table en direct, via le formulaire, ou dans les deux cas?
        0
    2. van M Messages postés 44 Date d'inscription   Statut Membre Dernière intervention  
       
      En fait au départ j'ai mis mes champs en type " texte court"
      Ensuite après avoir fait une requête sur ma table (location ) , la requête ne fonctionne parce mes champs sont de type texte court

      Ma requête met à jour le champ louer ( de la table panneau ) à non si date_fin <date ()
      La requête ne fonctionne que si mes champs sont de type Date/Heure

      Le problème est que après cela impossible d'entrer une date dans ses champs

      Un message dit " la valeur que vous avez entrée ne correspond pas types de données Date/heure dans cette colonne
      0
      1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588 > van M Messages postés 44 Date d'inscription   Statut Membre Dernière intervention  
         
        cela se produit quand tu modifies la table en direct, via le formulaire, ou dans les deux cas?
        quelle valeur essaies-tu d'introduire dans le champ date?
        0
  6. castours Messages postés 2955 Date d'inscription   Statut Membre Dernière intervention   217
     
    Bonjour
    Il faut mettre les deux champs a la propriété date heure et non a texte.choisir un format 00/00/00
    0
    1. van M Messages postés 44 Date d'inscription   Statut Membre Dernière intervention  
       
      C'est fait. Je viens d'utiliser le format que tu proposes mais c'est pareil malheureusement
      0
  7. castours Messages postés 2955 Date d'inscription   Statut Membre Dernière intervention   217
     
    Bonjour
    Je ne comprends pas cela fonctionne sur mon pc mais je n'ai pas access 2016 mais 2007
    0
    1. van M Messages postés 44 Date d'inscription   Statut Membre Dernière intervention  
       
      Bonjour. C'est bizarre moi j'utilise le 2013
      0
    2. van M Messages postés 44 Date d'inscription   Statut Membre Dernière intervention  
       


      J'essaie de t'envoyer une capture d'écran
      0
    3. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588 > van M Messages postés 44 Date d'inscription   Statut Membre Dernière intervention  
       
      et si tu utilises le petit bouton calendrier, cela montre la date comment?
      peux-tu partager ton fichier?
      0
    4. van M Messages postés 44 Date d'inscription   Statut Membre Dernière intervention  
       


      Voilà comment sa se présente
      0
    5. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588 > van M Messages postés 44 Date d'inscription   Statut Membre Dernière intervention  
       
      et si tu choisis une date via ce calendrier, aussi un message d'erreur?
      peux-tu partager ton fichier?
      0
  8. castours Messages postés 2955 Date d'inscription   Statut Membre Dernière intervention   217
     
    bonjour
    aucun souci avec access 2007
    0
    1. van M Messages postés 44 Date d'inscription   Statut Membre Dernière intervention  
       
      7Bonjour castour
      Pour mon problème de départ j'ai opté plutôt pour un code événement que j'ai introduit au niveau de mon bouton enregistré. Le code est le suivant :

      Private sub record_click
      DoCmd.RefreshRecord
      DoCmd.OpenQuery "maj_panneaux"


      maj_panneaux est ma requête

      Et sa marche à merveille.
      0
    2. van M Messages postés 44 Date d'inscription   Statut Membre Dernière intervention  
       
      J'ai un dernier problème à vous soumettre

      - Je veux faire une mise en forme conditionnelle sur mon champ date_fin

      - Alors l'idée est de mettre la date_fin en rouge lorsque la différence entre date_fin et date actuelle est inférieur ou égal à 14 jours

      - j'ai insérer une expression dans ma mise en forme conditionnelle qui est :
      Diffdate ('j'; [date_fin ];date ())<=14

      - le soucis est que même pour les dates dont la difference est supérieur à 14 jours sont mis en rouge
      0
    3. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588 > van M Messages postés 44 Date d'inscription   Statut Membre Dernière intervention  
       
      as-tu vraiment mis un espace après date_fin?
      et si tu fais simplement
      [date_fin] - date() <= 14
      ?
      0
    4. van M Messages postés 44 Date d'inscription   Statut Membre Dernière intervention   > yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention  
       
      Bonjour,
      Non j'ai pas mis d'espace après date_fin c'est une erreur au niveau de mon message
      J'ai essayé votre proposition et c'est le contraire qui produit elle prend en compte les dates antérieure

      Exemple :

      Date_fin = 31/07/2018 et date () = 25/07/2018 : date_fin est mis en rouge c'est normal

      Date_fin = 30/06/2018 et date () = 25/07/2018 : date_fin est aussi mis en rouge , ici c'est pas normal

      En fait cette formule comme la mienne ne tiennent compte que des jours et non de la date en entier
      0
    5. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588 > van M Messages postés 44 Date d'inscription   Statut Membre Dernière intervention  
       
      la différence entre 30/6/18 et 25/7/18 est négative, donc inférieure à 14.
      tu expliques que tu veux mettre en rouge toutes les dates antérieures à dans 14 jours. et c'est bien ce que fait la formule:
      [date_fin] <= date() + 14

      n'hésite pas à expliquer en français ce que tu veux réellement obtenir, ni à donner des exemples.
      0
  9. htmalbenur Messages postés 1 Statut Membre
     
    Salut Mr Castours vous avez donner un url pour la solution d'une base pour une demande de credit:

    table clients
    table prets
    tables remboursements

    est-ce que vous pouvez m'envoyer l'url.merci
    0
    1. castours
       
      bonjour
      je ne vous ai jamais donné d'adresse mais si me donnais le contenu des des tables , je pourrai essayer de faire votre base.
      0
    2. castours
       
      Bonjour
      https://www.cjoint.com/c/HGEhyHXJSsN
      Bonjour
      Dans ce lien un base emprunteur avec table emprunteurs, emprunts,remboursement
      Donne réponse
      Merci
      0