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 :

Enregistrement des données dans une requete access à partir d'un form vb


Sujet :

VB 6 et antérieur

  1. #1
    Membre à l'essai
    Inscrit en
    Août 2007
    Messages
    19
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Août 2007
    Messages : 19
    Points : 13
    Points
    13
    Par défaut Enregistrement des données dans une requete access à partir d'un form vb
    Bonjour tous le monde

    Voilà j'ai un problème j'ai créé 4 tables(T_Agences, T_DR, T_Connexion et T_NAS). Les clés primaires des 3 dernières tables sont des clés secondaires de la table T_Agence.
    Ensuite j'ai créé une requete qui prend tous les champs de T_agence, Nom_DR de T_DR, type_connexion de T_Connexion et type_nas de T_NAS.
    Tout ça c'est fait sous access.
    Et sous vb j'ai créé un formulaire comportant les éléments de la requête où type_nas et type_connexion sont datacombo alimentés par leur tables.
    Maintenant le problème est que si je saisis les données et que je veuille les ajouter au niveau de la requête j'ai un message d'erreur me disant que l'objet est en lecture seule.
    J'aimerai que vous m'aidiez ou me proposer une autre solution je dois rendre l'application dans 2 jours SVP.
    Aussi je dois effectuer des recherches à partir de la requête.
    Les recherches sont: afficher les noms d'agence selon le type de connexion et selon le type de NAS.
    Je vous donne mon code ajouter et la connexion à la requête que j'ai fait sous vb

    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    Private Sub Cmdajout_Click()
     
    If (Textcodesi.Text = "" And Textnomag.Text = "" And Textnumtel.Text = "" And _
     Textdr.Text = "" And Textloop.Text = "" And Textbri.Text = "" And Cmbstat.Text = "" And _
    Textnumipls.Text = "" And Cmbcon.Text = "" And Cmbnas.Text = "" And _
    Textobs.Text = "" And Textnom.Text = "" And Textpren.Text = "" And _
    Textport.Text = "" And Textemail.Text = "") Then
    MsgBox "Les champs sont vides !", vbCritical
    Else
    Tb.AddNew
              Tb![nom_agence] = Textnomag.Text
              Tb![code_sibanque] = Textcodesi.Text
              Tb![nom_dr] = Textdr.Text
              Tb![num_tel] = Textnumtel.Text
              Tb![num_ipls] = Textnumipls.Text
              Tb![loopback] = Textloop.Text
              Tb![adresse_ipbri] = Textbri.Text
              Tb![statut] = Cmbstat.Text
              Tb![type_connexion] = Cmbcon.Text
              Tb![type_nas] = Cmbnas.Text
              Tb![prenom_gerant] = Textpren.Text
              Tb![nom_gerant] = Textnom.Text
              Tb![portable_gerant] = Textport.Text
              Tb![email_gerant] = Textemail.Text
              Tb![observations] = Textobs.Text
            Tb.Update
    TabStrip.Tabs.Item(2).Caption = "Gestion des Agences"
    Call EffacerChamps
    'End If
    End If
    TabStrip.Tabs.Item(1).Selected = True
     
    End Sub

    Pour la connexion :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Private Sub Form_Load()
     
    bd.Provider = "Microsoft.jet.oledb.4.0"
            bd.ConnectionString = App.Path & "\Les_Caisses.mdb"
            bd.Open
            Tb.Open "select * from R_Agences ", bd, adOpenDynamic, adLockOptimistic
    Call Ajuster
     
     
    End Sub

    Merci d'avance

  2. #2
    Membre actif
    Avatar de Hatchepsout
    Inscrit en
    Octobre 2006
    Messages
    170
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 170
    Points : 222
    Points
    222
    Par défaut

  3. #3
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2007
    Messages
    143
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 143
    Points : 177
    Points
    177
    Par défaut
    Il faut que tu ajout les donnée grâce à une instruction sql dans ta base accès et que tu fasse un requery sur ton recordset pour mettre les données à jour :

    Exemple d'utilisation :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    db.execute "INSERT INTO maTable (champ1,champ2,champn) VALUES (val1,val2,valn)"
    tb.requery

  4. #4
    Membre du Club
    Inscrit en
    Octobre 2006
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 41
    Points : 49
    Points
    49
    Par défaut
    Salut,
    si tu veux que tous tes textes soit renseigner, remplaces les and par les or:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    If (Textcodesi.Text = "" or Textnomag.Text = "" or Textnumtel.Text = "" or _
     Textdr.Text = "" or Textloop.Text = "" orTextbri.Text = "" or Cmbstat.Text = "" or_
    Textnumipls.Text = "" or Cmbcon.Text = "" or Cmbnas.Text = "" or _
    Textobs.Text = "" or Textnom.Text = "" or Textpren.Text = "" or _
    Textport.Text = "" or Textemail.Text = "") Then
    Avec And, 1 seul texte renseigné, et ça passe à else, et si tes champs ne veulent pas de vide, erreur!

    Esuite, verifis dans propriétes des textBox que locked soit à false

Discussions similaires

  1. Enregistrer des données dans une base de donnée
    Par fabienlege dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 18/04/2007, 16h34
  2. Enregistrer des données dans une table à partir du code
    Par Ragnarok85 dans le forum Access
    Réponses: 4
    Dernier message: 24/01/2007, 13h03
  3. extraction des données dans une table Access
    Par moabomotal dans le forum Access
    Réponses: 2
    Dernier message: 26/05/2006, 11h17
  4. Rassembler des données dans une requete
    Par energies dans le forum Access
    Réponses: 2
    Dernier message: 31/03/2006, 12h39
  5. Inserer des données dans une table access SQL
    Par ouellet5 dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 23/11/2005, 21h11

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