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 :

Requery dans un onDelete


Sujet :

Access

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    141
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 141
    Points : 61
    Points
    61
    Par défaut Requery dans un onDelete
    Bonjour,
    J'ai un jeu d'enregistrement et j'utilise l'evenement Form_Delete pour supprimer la ligne selectionnée.
    Vous allez me dire pourquoi utiliser l'évemement sachant qu'access le gere tres bien.
    Uniquement pour supprimer certaines données d'une table et pour cela dans cet évenement, je fais un db.execute(sql) avec sql "delete bla bla bla"

    La suppression fonctionne tres bien sauf qu'il m'affiche ensuite "supprimée" et quand je fais un petit me.requery, il me met une grosse erreur, bohhhhhhh le méchant

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    191
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 191
    Points : 209
    Points
    209
    Par défaut
    bonjour,
    serait il possible de mettre l'erreur (numéro , description)... histoire de savoir d'ou ça viens exactement parce que juste ça
    il me met une grosse erreur, bohhhhhhh le méchant
    sa aide pas trop...

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    141
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 141
    Points : 61
    Points
    61
    Par défaut
    lol
    oui biensur désolé d'avoir oublier de le mettre
    c'est une erreur 3167, l'enregistrement est supprimé

    Il faut dire que bohhhh le méchant c'est drole quand meme non...

  4. #4
    Membre actif
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    191
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 191
    Points : 209
    Points
    209
    Par défaut
    et pourquoi utilises tu le requery ?
    parce que le message est explicite...
    tu essayes de faire une requete sur un enregistrement qui vient d'être effacé

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    141
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 141
    Points : 61
    Points
    61
    Par défaut
    J'utilise requery pour mettre à jour l'affichage
    la procédure que je veux faire, c'est de sélectionner une ligne d'enregistrement de la supprimer et ensuite de l'enlever cet enregistrement de l'affichage.

    Je m'explique bien?
    si vous avez d'autres questions, aucun probleme

  6. #6
    Membre actif
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    191
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 191
    Points : 209
    Points
    209
    Par défaut
    ok
    tu as essayé avec un me.refresh ?

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    141
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 141
    Points : 61
    Points
    61
    Par défaut
    Oui, oui j'ai déja essayé et cela ne fonctionne pas

  8. #8
    Membre actif
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    191
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 191
    Points : 209
    Points
    209
    Par défaut
    je ne me souviens plus de la solution à ce problème, je l'ai rencontré et la solution "pas belle" était de fermer et de réouvrir le formulaire, mais j'avais réussit par la suite à le faire d'une manière plus élégante.
    je me demande si je n'avais pas fait la suppression à partir d'une requete sql... et ensuite faire un me.requery

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    141
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 141
    Points : 61
    Points
    61
    Par défaut
    Ah ben moi j'ai fait un truc comme ca
    le plus simple, je vais mettre le code.
    Je vais chercher par rapport à ce que tu viens de me dire
    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
     
    Private Sub Form_Delete(Cancel As Integer)
        Cancel = True
     
        Dim SQL As String
     
        Dim ID_ENTREPRISE As Integer
        Dim JOUR As New DateEtendue
     
        ID_ENTREPRISE = Me.ID_ENTREPRISE
        JOUR.Valeur = "01/" & Me.JOUR
        JOUR.Language Américain
     
        SQL = "DELETE * FROM Produit WHERE ID=" & ID & " AND ID_ENTREPRISE=" & ID_ENTREPRISE & " AND JOUR=#" & JOUR.Valeur & "#;"
        Debug.Print SQL
     
        db.Execute (SQL)
        Set JOUR = Nothing
        Me.Requery
    End Sub

  10. #10
    Membre actif
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    191
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 191
    Points : 209
    Points
    209
    Par défaut
    il y a un truc que je ne comprend pas, tu fais un delete dans l'action delete, lorsque l'action du formulaire delete est appelé, les données sont encore présente dans le formulaire ou elles ont déjà été supprimée ?

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    141
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 141
    Points : 61
    Points
    61
    Par défaut
    Oui je sais que c'est bizarre, je t'explique quand je sélectionne une ligne dans un formulaire continu et qu'on appuie sur Suppr. il supprime l'enregistrement sélectionné sauf que dans ce formulaire il affiche les données d'une requête avec des jointures.
    Donc si j'utilise cette façon, il m'efface tout l'enregistrement, c'est à dire toutes les données de toutes les tables communes.

    Ce que je veux c'est de supprimer uniquement les données d'une table, pour cela je fais appel à l'action du formulaire delete mais je lui précise clairement

    pour ne pas éffacer lui meme les données.
    ensuite il n'efface rien et je peux mettre "mon" delete qui supprime uniquement les données que je désire.

  12. #12
    Membre actif
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    191
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 191
    Points : 209
    Points
    209
    Par défaut
    ce que tu peux faire c'est le clic d'un bouton supprimer dans le formulaire en mode continus supprimer ton enregistrement ensuite si ça marche avec ça tu le fais sur le ondelete ...
    que lorsque tu met le cancel a true il est trop tard, il termine deja la procedure donc supprime tes enregistrements et ne trouve plus ceux qui sont présent dans les autres tables ou enregistrements

  13. #13
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    141
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 141
    Points : 61
    Points
    61
    Par défaut
    Bon ben je vais suivre cette piste
    je vous tiendrai au courant
    merciiiiiiiiiiiiiiiiiiiiiii

  14. #14
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    141
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 141
    Points : 61
    Points
    61
    Par défaut
    j'ai mis un bouton ca fonctionne
    mais pas avec le ondelete
    euh si je ne mets pas le cancel à true
    c'est pire car il efface l'enregistrement avec mon code et ensuite il essaye de l'effacer de lui meme.
    Quand on met le cancel à true, il ne fait uniquement mon code et c'est ce que je veux

Discussions similaires

  1. [AC-2000] DoCmd.Requery dans un sous formulaire
    Par Ach29 dans le forum Access
    Réponses: 6
    Dernier message: 02/12/2013, 18h09
  2. Pb REQUERY dans Liste déroulante
    Par PascalJ dans le forum IHM
    Réponses: 1
    Dernier message: 10/06/2009, 10h48
  3. Réponses: 2
    Dernier message: 02/04/2007, 14h21
  4. Utilité de .Requery dans un formulaire
    Par mourmaux dans le forum IHM
    Réponses: 5
    Dernier message: 07/12/2006, 14h53
  5. Problème de requète SQL dans un Requery
    Par Keraccess dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 22/10/2004, 15h58

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