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

VB 6 et antérieur Discussion :

[VB6]Probleme lors de l'ajout d'un enregistrement [access]


Sujet :

VB 6 et antérieur

  1. #1
    Futur Membre du Club
    Inscrit en
    Juin 2006
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 18
    Points : 6
    Points
    6
    Par défaut [VB6]Probleme lors de l'ajout d'un enregistrement [access]
    Bonjour a tous, j'ai un probleme avec ma base de donnée access.
    J'ai une form avec un bouton ajouter, qui me sert a mettre a jour ma base de donnée access.

    voila le code de mon bouton ajouter :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    dataemp.Recordset.AddNew
    dataemp.Recordset.MoveLast
    Le seul probleme est que lorsque je l'utilise, cela supprime mon ancien enregistrement,en fait, ca le remplace.

    Je suis sur que c'est un truc tout bete, mais mes recherches n'ont rien données,cest pourquoi je viens ici.

    Merci d'avance.

  2. #2
    Membre éprouvé Avatar de avigeilpro
    Homme Profil pro
    Ambulancier
    Inscrit en
    Janvier 2004
    Messages
    880
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Creuse (Limousin)

    Informations professionnelles :
    Activité : Ambulancier
    Secteur : Transports

    Informations forums :
    Inscription : Janvier 2004
    Messages : 880
    Points : 971
    Points
    971
    Par défaut
    Normalement tu fait pas le movelast après le addnew. Fait addnew, et tu sera déjà sur l'enregistrement ajouté.Entre tes données pour le nouvel enregistrement. Ensuite fait resync puis tu poura te déplacer dans les enregistrements.

  3. #3
    Futur Membre du Club
    Inscrit en
    Juin 2006
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 18
    Points : 6
    Points
    6
    Par défaut
    resync ? comment ca ? Je connais pas ce truc ?
    dataemp.Recordset.resync ?

  4. #4
    Membre éprouvé Avatar de avigeilpro
    Homme Profil pro
    Ambulancier
    Inscrit en
    Janvier 2004
    Messages
    880
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Creuse (Limousin)

    Informations professionnelles :
    Activité : Ambulancier
    Secteur : Transports

    Informations forums :
    Inscription : Janvier 2004
    Messages : 880
    Points : 971
    Points
    971
    Par défaut
    heu ... oui, du moins moi je dois l'utiliser. Mais toi je sais pas car moi j'utilise les concepteurs ActiveX pour me connecter à une base de données Acces Et si je ne le fait pas, il ne veut pas que je bosse sur ma table, ni meme la fermer. C'est un peu pour lui dire de cloturer le nouvel enregistrement, afin qu'il soit integré dans ma table

  5. #5
    Futur Membre du Club
    Inscrit en
    Juin 2006
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 18
    Points : 6
    Points
    6
    Par défaut
    Ha zut, j'utilise pas ca moi.
    Ca me donne une erreur 438 " l'objet ne gere pas cette proprietée ou methode "

    quelq'un a une autre idée ?

  6. #6
    Membre éprouvé Avatar de avigeilpro
    Homme Profil pro
    Ambulancier
    Inscrit en
    Janvier 2004
    Messages
    880
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Creuse (Limousin)

    Informations professionnelles :
    Activité : Ambulancier
    Secteur : Transports

    Informations forums :
    Inscription : Janvier 2004
    Messages : 880
    Points : 971
    Points
    971
    Par défaut
    tu as bien enlevé le movelast ?

    Et peut tu mettre un peu plus de code histoire que l'on voit mieux ce qui pourait ce passer?

    ps : n'oubli pas les balises code

  7. #7
    Futur Membre du Club
    Inscrit en
    Juin 2006
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 18
    Points : 6
    Points
    6
    Par défaut
    Oui j'ai enlevé le Movelast :s

    Ben en fait mon code est tout simple, il n'y a que cette ligne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dataemp.Recordset.AddNew
    dans mon bouton "ajouter "
    puis ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    datemp.Recordset.Edit
    datemp.Recordset.Update
    dans mon bouton "ok" ( a cliquer apres avoir terminé de renseigner les champs.)

  8. #8
    Membre éprouvé Avatar de avigeilpro
    Homme Profil pro
    Ambulancier
    Inscrit en
    Janvier 2004
    Messages
    880
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Creuse (Limousin)

    Informations professionnelles :
    Activité : Ambulancier
    Secteur : Transports

    Informations forums :
    Inscription : Janvier 2004
    Messages : 880
    Points : 971
    Points
    971
    Par défaut
    dans MSND ya une ligne en plus dans l'exemple, tu as regardé ? c'est peut-etre ca ton prob ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
       With rstTemp
          .AddNew
          !Prénom = strFirst
          !Nom = strLast
          .Update
          .Bookmark = .LastModified
       End With

  9. #9
    Membre chevronné
    Avatar de sovo
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2004
    Messages
    1 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 389
    Points : 1 788
    Points
    1 788
    Par défaut
    Et apres avoir enlever tu as toujours l'erreur ??

    aussi tu peux faire comme ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    'tu mets ce code pour le bouton enre_click
     
    dataemp.Recordset.AddNew
    dataemp.Recordset!User = "Sovo"   'User est un champ de ta table
    ....                                            'tu fait de meme pour les autres champs
    dataemp.Recordset.Update

  10. #10
    Membre éprouvé Avatar de avigeilpro
    Homme Profil pro
    Ambulancier
    Inscrit en
    Janvier 2004
    Messages
    880
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Creuse (Limousin)

    Informations professionnelles :
    Activité : Ambulancier
    Secteur : Transports

    Informations forums :
    Inscription : Janvier 2004
    Messages : 880
    Points : 971
    Points
    971
    Par défaut
    Et Edit n'est pas censé etre fait plus tot ?

  11. #11
    Futur Membre du Club
    Inscrit en
    Juin 2006
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 18
    Points : 6
    Points
    6
    Par défaut
    J'ai essayé ta ligne en plus avigeilpro, ca n'a pas l'air de changer grand chose :s

    Sovo, ton code sert a rajouter des personne en ligne de code si j'ai bien compris ? mais moi j'aimerai qu'un user normal qui n'y connaisse rien puisse ajouter kkun.


    Vous faites comment vous quand vous avez une bdd access et que vs voulez la mettre a jour ? (ajouter, supprimer, naviguer ... )

  12. #12
    Membre éprouvé Avatar de avigeilpro
    Homme Profil pro
    Ambulancier
    Inscrit en
    Janvier 2004
    Messages
    880
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Creuse (Limousin)

    Informations professionnelles :
    Activité : Ambulancier
    Secteur : Transports

    Informations forums :
    Inscription : Janvier 2004
    Messages : 880
    Points : 971
    Points
    971
    Par défaut
    Une boite texte nommée Text1 sur ta forme et le code de sovo devient :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    dataemp.Recordset.AddNew
    dataemp.Recordset!User = Text1.text   'User est un champ de ta table
    ....                                            'tu fait de meme pour les autres champs
    dataemp.Recordset.Update
    au lieu d'ajouter "sovo" ca ajoute ce que l'utilisateur a tapé dans la boite texte

  13. #13
    Futur Membre du Club
    Inscrit en
    Juin 2006
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 18
    Points : 6
    Points
    6
    Par défaut
    erf oui evidemment je suis bete ^^

    Je vais tester de suite.

  14. #14
    Futur Membre du Club
    Inscrit en
    Juin 2006
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 18
    Points : 6
    Points
    6
    Par défaut
    Rahhh ! il ya encore un probleme !
    Il me dit que le champ ne peut etre une chaine vide !
    Pourtant elle n'est pas vide ma textbox, je rentre bien kkchose dedans !

  15. #15
    Membre éprouvé Avatar de avigeilpro
    Homme Profil pro
    Ambulancier
    Inscrit en
    Janvier 2004
    Messages
    880
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Creuse (Limousin)

    Informations professionnelles :
    Activité : Ambulancier
    Secteur : Transports

    Informations forums :
    Inscription : Janvier 2004
    Messages : 880
    Points : 971
    Points
    971
    Par défaut
    Mais peut-etre y a t-il d'autre champs à remplir dans ton enregistrement ??

  16. #16
    Membre chevronné
    Avatar de sovo
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2004
    Messages
    1 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 389
    Points : 1 788
    Points
    1 788
    Par défaut
    Citation Envoyé par Poustik
    Rahhh ! il ya encore un probleme !
    Il me dit que le champ ne peut etre une chaine vide !
    Pourtant elle n'est pas vide ma textbox, je rentre bien kkchose dedans !
    parceque tu essais de ne rien mettre dans ta cle (qui ne doit pas etre vide). Essai de mettre quelque chose dans ce champs tout devrais aller.

  17. #17
    Futur Membre du Club
    Inscrit en
    Juin 2006
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 18
    Points : 6
    Points
    6
    Par défaut
    Oui , mais ca ne marche toujours pas :'( :'( :'(

    http://www.partage-facile.com/16857-prog.zip.html

    Voila ma base et mon petit programme, si quelq'un peut m'aider a me sortir de la parcque je commence vraiment a en avoir marre de ce probleme

    edit : j'avais pas vu le message de sovo , mais c'est quoi la clef ? Je suis perdu :s

  18. #18
    Membre éprouvé Avatar de avigeilpro
    Homme Profil pro
    Ambulancier
    Inscrit en
    Janvier 2004
    Messages
    880
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Creuse (Limousin)

    Informations professionnelles :
    Activité : Ambulancier
    Secteur : Transports

    Informations forums :
    Inscription : Janvier 2004
    Messages : 880
    Points : 971
    Points
    971
    Par défaut
    Dans ton programme, tu as directement attaché les boites text au recordset ce qui, au moment ou tu fait .addnew, les vide, ainsi quand juste derrière tu réccupère les données des boites pour les mettre dans ta base, les boites sont vides. Or lors de la création de ta table tu as spécifié que tous les champs sauf ville ne pouvaient être nuls, d'ou le déclenchement d'une erreur.

    comment a tu lié directement les boites au recordset ?

  19. #19
    Futur Membre du Club
    Inscrit en
    Juin 2006
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 18
    Points : 6
    Points
    6
    Par défaut
    Houla, ca devient complex la dedans ^^

    ben j'ai lié mes txtbox avec une proprieté genre datasource si je me souviens bien ?

  20. #20
    Membre éprouvé Avatar de avigeilpro
    Homme Profil pro
    Ambulancier
    Inscrit en
    Janvier 2004
    Messages
    880
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Creuse (Limousin)

    Informations professionnelles :
    Activité : Ambulancier
    Secteur : Transports

    Informations forums :
    Inscription : Janvier 2004
    Messages : 880
    Points : 971
    Points
    971
    Par défaut
    J'ai trouvé la solution :

    enlève ce qu'il y a dans les propriété Datasource et DataFeild de toute tes boites texte. et je t'ai mis en piece jointe ta feuille modifiée. regarde bien les différences

    EDIT : J'ai juste modifié le code, tu devra quand meme enlever le contenu des propriétés

Discussions similaires

  1. Probleme lors de l'ajout d'un noeud a un Windows Failover
    Par vincent.diallonort dans le forum Windows Serveur
    Réponses: 0
    Dernier message: 20/05/2013, 20h26
  2. Réponses: 0
    Dernier message: 25/11/2012, 11h49
  3. Réponses: 3
    Dernier message: 28/07/2010, 12h29
  4. erreur lors de l'ajout d'un enregistrement
    Par djilos dans le forum VB.NET
    Réponses: 2
    Dernier message: 03/03/2008, 13h51
  5. [MAESTRO 1.2]Probleme lors d'un ajout de projet
    Par DanielW33 dans le forum Maven
    Réponses: 4
    Dernier message: 09/06/2007, 14h14

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