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 :

Erreur d'exécution -2147352567 (80020009)


Sujet :

Access

  1. #1
    Provisoirement toléré Avatar de charleshbo
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    222
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 222
    Points : 125
    Points
    125
    Par défaut Erreur d'exécution -2147352567 (80020009)
    Erreur d'exécution '-2147352567 (80020009) ':
    Impossible de mettre a jour Recordset.

    ??? Avez-vous déjà eu cette erreur ???

    Voici le code sur lequel l'erreur survient :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    Dim RST As Recordset
     
    Set bds = CurrentDb
    Set RST = bds.OpenRecordset("SELECT echantillon.* FROM echantillon WHERE echantillon.NO_FORMULA = " & Me.Modifiable135.Value & "  order by echantillon.id_mat_piece ASC;")
    Me.Refresh
    If RST.RecordCount = 0 Then
    Else
        RST.MoveFirst
    -> Me.id_boy_lgverif = RST!id_boy_lgverif
        Me.id_boy_lgverif_po = RST!id_boy_lgverif_po
        RST.MoveNext
        Do While Not RST.EOF
        Me.id_boy_lgverif = RST!id_boy_lgverif + Me.id_boy_lgverif
        Me.id_boy_lgverif_po = RST!id_boy_lgverif_po + Me.id_boy_lgverif_po
     
     
        RST.MoveNext
        Loop
    End If
    Charles Bergeron - Webmaster/Infographe/Photographe

  2. #2
    Expert éminent

    Avatar de Maxence HUBICHE
    Homme Profil pro
    Développeur SQLServer/Access
    Inscrit en
    Juin 2002
    Messages
    3 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur SQLServer/Access

    Informations forums :
    Inscription : Juin 2002
    Messages : 3 842
    Points : 9 197
    Points
    9 197
    Par défaut
    essaye en remplaçant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set RST = bds.OpenRecordset("SELECT echantillon.* FROM echantillon WHERE echantillon.NO_FORMULA = " & Me.Modifiable135.Value & "  order by echantillon.id_mat_piece ASC;")
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set RST = bds.OpenRecordset("SELECT echantillon.* FROM echantillon WHERE echantillon.NO_FORMULA = " & Me.Modifiable135.Value & "  order by echantillon.id_mat_piece ASC;",dbOpenDynaset)

  3. #3
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 524
    Points
    14 524
    Par défaut
    c'est le recordset du formulaire qui ne peut pas être mis à jour
    le formulaire est-il modifiable?

    sinon il te manque le parcours du formulaire, tu écris toujours sur la même ligne

  4. #4
    Expert éminent

    Avatar de Maxence HUBICHE
    Homme Profil pro
    Développeur SQLServer/Access
    Inscrit en
    Juin 2002
    Messages
    3 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur SQLServer/Access

    Informations forums :
    Inscription : Juin 2002
    Messages : 3 842
    Points : 9 197
    Points
    9 197
    Par défaut
    Citation Envoyé par Arkham46
    c'est le recordset du formulaire qui ne peut pas être mis à jour
    Exact !!!! Autant pour moi !
    Ca m'apprendra à lire le code jusqu'au bout et à regarder les petit -> qui trainent ...

    à regarder :
    1- la propriété de formulaire "Type Recordset" de l'onglet données (Pas sur instantané)
    2- les quelques propriétés au-dessus pour vérifier que la mise à jour est autorisée
    3- la source du formulaire.
    Là, je parierai que c'est une requête.
    Je serai curieux de savoir si déjà, la requête servant de source au formulaire est modifiable ...

  5. #5
    Provisoirement toléré Avatar de charleshbo
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    222
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 222
    Points : 125
    Points
    125
    Par défaut
    Propriété Type Recordset = feuille de réponse dynamique
    J'ai mis ensuite toutes les propriétés a "OUI"
    Et oui c'est bien une requête qui sert de source au formulaire...
    Comment faire pour savoir que cette requête est modifiable?
    Charles Bergeron - Webmaster/Infographe/Photographe

  6. #6
    Expert éminent

    Avatar de Maxence HUBICHE
    Homme Profil pro
    Développeur SQLServer/Access
    Inscrit en
    Juin 2002
    Messages
    3 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur SQLServer/Access

    Informations forums :
    Inscription : Juin 2002
    Messages : 3 842
    Points : 9 197
    Points
    9 197
    Par défaut
    Donc, ton formulaire est modifiable.
    Ta requête ne doit pas l'être...

    Pour savoir si ta requête est modificable ?
    Ben .... tu ouvres les requêtes, et tu essaie directement dedans

  7. #7
    Provisoirement toléré Avatar de charleshbo
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    222
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 222
    Points : 125
    Points
    125
    Par défaut
    non la requete n'est pas modifiable.. je viens de vérifier...
    je me demandais s'il était possible de t'envoyer le mdb par quelque moyen que ce soit pour que tu puisses regarder un peu... si tu ne veux pas je comprendrai... c'est juste que je dois vraiment réparer cette bd parce que pendant ce temps les utilisateurs de l'usine ne peuvent l'utiliser...
    Charles Bergeron - Webmaster/Infographe/Photographe

  8. #8
    Membre éprouvé
    Avatar de keita
    Homme Profil pro
    Inscrit en
    Novembre 2002
    Messages
    881
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations forums :
    Inscription : Novembre 2002
    Messages : 881
    Points : 1 121
    Points
    1 121
    Par défaut
    salut
    dans ton code, tu essais de parcourir le recordset alors que tu ne l'as pas encore rempli; ton code en partie:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    RST.MoveFirst 
    -> Me.id_boy_lgverif = RST!id_boy_lgverif 
        Me.id_boy_lgverif_po = RST!id_boy_lgverif_po 
        RST.MoveNext 
        Do While Not RST.EOF 
        Me.id_boy_lgverif = RST!id_boy_lgverif + Me.id_boy_lgverif 
        Me.id_boy_lgverif_po = RST!id_boy_lgverif_po + Me.id_boy_lgverif_po
    essai pour voir:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    RST.MoveLast   '<--- pour le remplir
    RST.MoveFirst 
    -> Me.id_boy_lgverif = RST!id_boy_lgverif 
        Me.id_boy_lgverif_po = RST!id_boy_lgverif_po 
        RST.MoveNext 
        Do While Not RST.EOF 
        Me.id_boy_lgverif = RST!id_boy_lgverif + Me.id_boy_lgverif 
        Me.id_boy_lgverif_po = RST!id_boy_lgverif_po + Me.id_boy_lgverif_po
        .................

  9. #9
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 524
    Points
    14 524
    Par défaut
    Citation Envoyé par keita
    [code]
    RST.MoveLast '<--- pour le remplir
    Keita, le MoveLast ne remplit pas le recordset, il se déplace jusqu'à la fin du recordset (et permet de "remplir" la propriété RecordCount pour certains type de recordset)
    Tu peux parcourir un recordset sans MoveLast.

    Si la requête sous-jacente au formulaire n'est pas modifiable (et donc le formulaire non plus) il faut en trouver la raison.

    C'est peut-être une jointure : dans ce cas il peut être utile d'indexer sans doublons la clé de jointure si cela est possible (si doublons alors il peut théoriqement y a avoir plusieurs lignes dans la requête pour une ligne de table, donc pas de modif possible)

    C'est peut-être un regroupement : dans ce cas il n'est pas possible de modifier la requête, une ligne de la requête étant un regroupement de plusieurs lignes de la table.

    Et si donc la requête est telle qu'on ne pas pas modifier les données alors il faudra sans doute modifier directement la table avec une requête SQL ou un recordset.
    Puis rafraichir le formulaire.

  10. #10
    Membre éprouvé
    Avatar de keita
    Homme Profil pro
    Inscrit en
    Novembre 2002
    Messages
    881
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations forums :
    Inscription : Novembre 2002
    Messages : 881
    Points : 1 121
    Points
    1 121
    Par défaut
    ok maestro
    merci Arkham pour l'info;sinon j'etais tout a fait daccord avec ce que tu avançais plus haut dejà et que tu reprends pour moi. je l'avais lu avec beaucoup d'interet.
    A+

Discussions similaires

  1. Erreur d'execution -2147352567 (80020009) sur un me.
    Par schwinny dans le forum VBA Access
    Réponses: 3
    Dernier message: 17/03/2008, 09h21
  2. Réponses: 3
    Dernier message: 14/02/2008, 10h49
  3. Erreur -2147352567(80020009)
    Par benjibast dans le forum Excel
    Réponses: 5
    Dernier message: 21/09/2007, 15h13
  4. Erreurs d'exécution sous delphi 5
    Par nkd dans le forum Langage
    Réponses: 3
    Dernier message: 06/11/2004, 17h25
  5. [Apache Perl] Erreur à l'exécution de mes cgi
    Par GLDavid dans le forum Apache
    Réponses: 4
    Dernier message: 28/08/2004, 20h23

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