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 :

Update Récalcitrante !! Ne met pas à jour !


Sujet :

Access

  1. #1
    Membre actif Avatar de samlepiratepaddy
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    320
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 320
    Points : 217
    Points
    217
    Par défaut Update Récalcitrante !! Ne met pas à jour !
    Slt,
    Je ne pige pas pourquoi cette UPDATE simple de marche pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.RunSQL "UPDATE T_Appel SET T_Appel.RésultatAppel = 'Hors Critères' WHERE (((T_Appel.IdAppel) = Forms!F_DébutCommunication!RécupIdAppel));"
    Pas d'erreur de sintaxe...., rien ...
    Elle me met : mise jour..
    Vous aller mettre a jour 0 lignes ??? : :
    je lui demande bien de mettre a jour l'enregistrement IdAppel à 'Hors Critères' !!!

  2. #2
    Membre chevronné
    Avatar de Demco
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    1 396
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 396
    Points : 2 228
    Points
    2 228
    Par défaut
    Je pense qu'en t'inspirant de ce tuto tu résoudras facilement tous tes futurs problèmes de ce genre.

    En espérant t'aider.

  3. #3
    Faw
    Faw est déconnecté
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2004
    Messages
    1 169
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 169
    Points : 1 383
    Points
    1 383
    Par défaut
    Salut, et comme ca:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    DoCmd.RunSQL "UPDATE T_Appel SET T_Appel.RésultatAppel = 'Hors Critères' WHERE [T_Appel.IdAppel] = 
    " & Forms!F_DébutCommunication!RécupIdAppel & ";"
    Elague les parenthèses du qbe elles encombrent ton code pour rien.

  4. #4
    Membre actif Avatar de samlepiratepaddy
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    320
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 320
    Points : 217
    Points
    217
    Par défaut
    Slt,
    Ben ça commence a me les briser menues menues
    Rien a faire !
    J'ai tout essayé
    en fait même avec une requete faite avec l'interface ACCESS ne met rien à jour :
    Le code est executer sur AfterMaj d'une liste, d'un autre form, ouvert, et selon l'enregistrement de la liste je met a jour
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub TrancheAge_AfterUpdate()
     
    If ((Me.Activité) = "Sans Emploi") Then
    MsgBox "BLABLABLA....."
    DoCmd.RunSQL "UPDATE T_Appel SET T_Appel.RésultatAppel = 'Hors Critères' WHERE [T_Appel.IdAppel] = " & Forms!F_DébutCommunication!SF_PriseAppel!IdAppel & ";"
     
     
    End If
    End Sub
    En entier ça donne ça!
    J'ai essayé aussi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.RunSQL "UPDATE T_Appel SET T_Appel.RésultatAppel = 'Hors Critères' WHERE [T_Appel.IdAppel] = " & Forms!F_DébutCommunication!SF_PriseAppel!Form.IdAppel & ";"
    J'ai essayé aussi ta façon
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    DoCmd.RunSQL "UPDATE T_Appel SET T_Appel.RésultatAppel = 'Hors Critères' WHERE [T_Appel.IdAppel] = 
    " & Forms!F_DébutCommunication!RécupIdAppel & ";"
    Et [RécupAppel] est un texbox indépendant qui va récuperer l 'IdAppel du sousformulaire...Pas très bien fait, je sais, mais j'explore toutes les possibilitées pour que cela fonctionne !!!
    Et a chaque fois je n'ai aucune ligne qui se met à jour
    Vous allez mettre à jour 0 lignes
    Mais y'en a une a mettre à jour !!!
    Grrrrrr
    Deux jours la dessus c'est terrible !!!!!!!!!!!!!!

  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 : 70
    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,

    Le message d'erreur semble indiquer qu'aucun enregistrement ne satisfait la clause WHERE.

    Soit c'est le cas, soit il y a un pb dans l'expression qui ne provoque pas d'erreur de syntaxe.

    Quel est le type de IdAppel?

    Tu pourrais visualiser RécupIdAppel par un msgbox, pour voir ..

    Bonne chance,

    pgz

  6. #6
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 342
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 342
    Points : 19 581
    Points
    19 581
    Billets dans le blog
    65
    Par défaut
    Utilise le tuto de caféine sur le débuggage:

    met avant ton DoCmd.runsql met 1:

    Debug.Print "UPDATE T_Appel SET T_Appel.RésultatAppel = 'Hors Critères' WHERE [T_Appel.IdAppel] =
    " & Forms!F_DébutCommunication!RécupIdAppel & ";"

    pour voir les valeur de Forms!F_DébutCommunication!RécupIdAppel
    et le contenu de ton sql

    Tu peux aussi faire 1 copier coller de ton sql dans qbe pour visionner le résultat et mieux comprendre ton sql ...

    @+

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    147
    Détails du profil
    Informations personnelles :
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 147
    Points : 172
    Points
    172
    Par défaut
    la meme requete en selection donne combien d'enregistrements ?

  8. #8
    Membre actif Avatar de samlepiratepaddy
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    320
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 320
    Points : 217
    Points
    217
    Par défaut
    Slt,
    Pour répondre a niclalex et bien en théorie Un seul c'est le but !
    Je souhaite simplement mettre a jour l'enregistrement de la T_Appel qui est selectionné dans mon F_DébutCommunication, ou plutot dans son sous formulaire qui est SF_PriseAppel basé sur ma T_Appel !
    L'enchainement est le suivant :
    Certaines actions sur le SF_PriseAppel entraine l'ouverture d'un autre formulaire F_InfoProspect.

    Si dans une Liste déroulante la valeur est "Sans Emploi" , sur AfterUpdate d'une texbox je lance mon IF ...
    Si les conditions sont requises, je souhaite mettre a jour ma T_Appel, mais bien sur, sur l'enregistrement en cours dans mon SF_PriseAppel.

    Dans un premier temps je pensais faire une bétise sur la construction de mon code en allant chercher l' IdAppel dans le SF_PriseAppel
    WHERE [T_Appel.IdAppel] = " & Forms!F_DébutCommunication!SF_PriseAppel!Form.IdAppel & ";"
    J'ai donc récupéré cet IdAppel dans le formulaire principal et j'ai fais ça
    WHERE [T_Appel.IdAppel] = " & Forms!F_DébutCommunication!RécupIdAppel & ";"
    Mais toujours le même bugg !
    Je suis d'accord avec PGZ c'est bien le Where qui déconne et ne renvoi aucune valeur !!!
    Mais POURQUOI bon sang !!!!
    Et mille excuses USER (Slt... ) Mais j'arrive pas a mettre en place le débug.Print, tout du moins je l'ai ecris mais je ne vois pas ou ce trouve le résultat...
    Vraiment null le gard mais ... j'fais avec mes petits moyens...

  9. #9
    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
    Et en utilisant le tutoriel de cafeine sur le debogage comme cela te l'a été conseillé avant ?

    Des fois je me demande à quoi sert d'écrire des tutos

  10. #10
    Membre actif Avatar de samlepiratepaddy
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    320
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 320
    Points : 217
    Points
    217
    Par défaut
    Bien,
    Puffff !!! quel boulot pour une si simple UPDATE!!
    1/J'ai revu, repris et enfin réussi a mettre en place le Débug.Print avec un espion sur l' IdAppel !
    Le résultat est "Null" !!!!!!!!!
    2/J'ai refais une SQL avec interface elle s'écrit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    UPDATE T_Appel SET T_Appel.RésultatAppel = "Hors Critères"
    WHERE (((T_Appel.IdAppel)=[Formulaires]![F_DébutCommunication]![SF_PriseAppel].[Form]![IdAppel]));
    Que j'active sur bouton ...
    Et bien même résultat !!!
    Pas de mise a jour !
    Transcris en VBA j'espère sans trop d'erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.RunSQL "UPDATE T_Appel SET T_Appel.RésultatAppel = 'Hors Critères'WHERE T_Appel.IdAppel = " & Forms!F_DébutCommunication!SF_PriseAppel.Form!IdAppel & ";"
    Toujours pareil IdAppel = "Null"
    Mais il est là ce p.... d' idAppel ET PAS NULL !Dans le SF_PriseAppel puisqu'il est basé sur la T_Appel !!! C'est ça que je pige pas !

  11. #11
    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 : 70
    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
    Ton sous formulaire, il est en mode unique ou continu?

    En mode unique, je passe. En mode continu, comment sais-tu que c'est le bon enregistrement qui est sélectionné?

    pgz

  12. #12
    Membre actif Avatar de samlepiratepaddy
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    320
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 320
    Points : 217
    Points
    217
    Par défaut
    Ben Unique c'est ça le pire !!!

  13. #13
    Faw
    Faw est déconnecté
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2004
    Messages
    1 169
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 169
    Points : 1 383
    Points
    1 383
    Par défaut
    Ta procédure est lancée depuis le ssForm ou le Form Parent.
    Dans le 2ème cas, il faut peut-être donner le focus au ssForm (ce qui expliquerait que ton champ retourne NULL...je mets ça au conditionnel)

    Essaye avant le update de donner le focus au ssform

  14. #14
    Membre actif Avatar de samlepiratepaddy
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    320
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 320
    Points : 217
    Points
    217
    Par défaut
    Merci Faw de cette dernière solution mais elle n'a reglé le problème
    Trop de prise de tête sur sur S.....té d' UPDATE !!!
    J'ai réorganisé la chose en mettant mon F_InfoProspect comme sous formulaire d'un nouveau formulaire ou je rappele mon champ RésultatAppel...
    Un simple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.RésultatAppel = "Hors Critères"
    Suffit maintenant....
    Mais je suis déçu d'etre obligé de passer par là même si cela fonctionne maintenant....
    Parce que je vais surement Rebuter sur ce type d'UPDATE qui pourtant ne me semble pas très compliquée...
    Pourquoi je n'arrive pas a la mettre en place ????
    Grand MYSTERE de SAM !!!
    Merci à tous, au moins j'aurai apris à mettre un Débug.Print, Point d'arret, etc.....
    Merci encore

  15. #15
    Membre actif Avatar de samlepiratepaddy
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    320
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 320
    Points : 217
    Points
    217
    Par défaut
    HOUP'SSSS !!
    Pas mis
    Me.RésultatAppel = "Hors Critères"
    Mais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Forms!F_SuiteAppelInfoProspect.RésultatAppel = "Hors Critères"
    Réctification car je ne sais pas si l'autre fonctionne ..
    Faut que je me pose là.........
    J'en écris que des co....ries

Discussions similaires

  1. [script.aculo.us] element.observer ne se met pas à jour après un ajax.updater
    Par PapyFouras dans le forum Bibliothèques & Frameworks
    Réponses: 4
    Dernier message: 16/01/2010, 11h19
  2. [A-03] UPDATE qui ne met pas à jour
    Par Milyshyn76 dans le forum VBA Access
    Réponses: 2
    Dernier message: 10/11/2008, 10h15
  3. [MySQL] update qui ne met pas à jour avec mysql
    Par wyllos dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 03/09/2008, 11h59
  4. [MySQL] un update qui ne met pas les champs à jour
    Par naazih dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 22/05/2008, 21h44
  5. un update qui ne met pas à jour
    Par dor_boucle dans le forum Requêtes
    Réponses: 3
    Dernier message: 14/10/2005, 09h31

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