none
Recherche de données, et affichage dans un champ txt RRS feed

  • Question

  • Bonjours
    Bon je m'explique: j'ai une base de données (Nom) sous access , lier avec une table sous Vb2008 ok
    j'ai crée une "form" (client individuel: Nclient, Nom ,Prenom etc) avec des champs txt.Mon idée c'est que en inscrivant le N° de client ou le Nom les champs corespondants se remplissent

    ce module fait partie d'un programme crée il y a 4 ans sous visual basic 5 et fonctionne tres bien, mais vb2008 est tous nouveau pour moi et les codes sont differents
    Si quelqu'un a une idée je suis preneur
    Merci
    jack
    dimanche 1 février 2009 17:52

Réponses

  •  

    Public Sub FillTextBoxes()

    Dim cn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Documents and Settings\Jacques\Mes documents\Visual Studio 2008\Projects\Marine Application V3\Marine Application V3\CLIENT3.mdb")  

    Dim parameter1 As New OleDbParameter()

    Dim cmd As New OleDbCommand("select * from ADRESSE where NCLIENT=?", cn)

    parameter1.ParameterName = "@NCLIENT" 

    parameter1.OleDbType = OleDbType.VarChar

    parameter1.Value = TextBox18.Text  


    cmd.Parameters.Add(parameter1)

    cmd.CommandType = CommandType.Text

    cn.Open()

    Dim da As New OleDbDataAdapter(cmd)

    Dim dt7 As New DataSet

    da.Fill(dt7, "ADRESSE")    

    cn.Close()

    For Each dRow As DataRow In dt7.Tables("ADRESSE").Rows

    'estimant que "RUE","NOM","PRENON" est le nom du champ

    TextBox6.Text = dRow("NOM").ToString() + " "+ dRow("PRENOM").ToString()
    TextBox8.Text = dRow("RUE")   

    ''Etc....

    Next

     End Sub


    a++


    Dev.Net-Senai Jandira
    • Marqué comme réponse tyjacks mercredi 11 février 2009 12:53
    mercredi 11 février 2009 10:52

Toutes les réponses

  • salut

          Public Sub FillTextBoxes()
            Dim cn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\test.mdb")

            Dim parameter1 As New OleDbParameter()
            Dim parameter2 As New OleDbParameter()

            Dim cmd As New OleDbCommand("select * from clients where Nclient=? or Nom=?", cn)

            parameter1.ParameterName = "@Nclient"
            parameter1.OleDbType = OleDbType.VarChar
            parameter1.Value = txtNclient.Text


            parameter2.ParameterName = "@nom"
            parameter2.OleDbType = OleDbType.VarChar
            parameter2.Value = txtNom.Text

            cmd.Parameters.Add(parameter1)
            cmd.Parameters.Add(parameter2)

            cmd.CommandType = CommandType.Text

            cn.Open()
            Dim da As New OleDbDataAdapter(cmd)
            Dim dt7 As New DataSet
            da.Fill(dt7, "Clients")
            cn.Close()

            For Each dRow As DataRow In dt7.Tables("Clients").Rows
                TextBox1.Text = dRow("Pernom").ToString()
                TextBox2.Text = dRow("Adress")
                ''Etc....
            Next


        End Sub


    a++

    Dev.Net-Senai Jandira
    dimanche 8 février 2009 13:26
  •  Hello
    merci pour la reponse
    j'ai modifier le code pour l'adapter a mon programme mais il ne fonctionne pas , ou alors il me met un erreur OleDb
    je suis paumé

    Public Sub FillTextBoxes()

    Dim cn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Documents and Settings\Jacques\Mes documents\Visual Studio 2008\Projects\Marine Application V3\Marine Application V3\CLIENT3.mdb")   "Connection avec la Base"

    Dim parameter1 As New OleDbParameter() "declaration des parametre, j'ai volontairement desactiver la recherche par le nom"

    'Dim parameter2 As New OleDbParameter()

    Dim cmd As New OleDbCommand("select * from ADRESSE where NCLIENT=? or Nom=?", cn)

    parameter1.ParameterName = "@NCLIENT" 

    parameter1.OleDbType = OleDbType.VarChar

    parameter1.Value = TextBox18.Text   "TextBoxe critere"

     

    'parameter2.ParameterName = "@nom"

    'parameter2.OleDbType = OleDbType.VarChar

    'parameter2.Value = txtNom.Text

    cmd.Parameters.Add(parameter1)

    'cmd.Parameters.Add(parameter2)

    cmd.CommandType = CommandType.Text

    cn.Open()

    Dim da As New OleDbDataAdapter(cmd)

    Dim dt7 As New DataSet

    da.Fill(dt7, "CLIENT3")     "L'érreur OleDb se produit ici  si tous le code est inserer dans le TextBox6 en GotFocus, le Focus par défaut est donné au critere le textBox18" 

    cn.Close()

    For Each dRow As DataRow In dt7.Tables("ADRESSE").Rows

    TextBox6.Text = dRow("NOM+PRENOM").ToString()

    TextBox8.Text = dRow("RUE")

    ''Etc....

    Next

     End Sub

    je pense avoir bien compris mais ce code me parrait bien long
    en Vb5 cette même fonction ne prenait que 4 lignes

    merci pour vos idées

    Jack

    lundi 9 février 2009 10:04
  • Salut,

    fais comme ça :

    Dim cmd As New OleDbCommand("select * from ADRESSE where NCLIENT=?", cn)

    da.Fill(dt7, "ADRESSE")

    TextBox6.Text = dRow("NOM").ToString() + " "+ dRow("PRENOM").ToString()


    a++

    Dev.Net-Senai Jandira
    lundi 9 février 2009 21:17
  •  Hello

    Dim cmd As New OleDbCommand("select * from ADRESSE where NCLIENT=?", cn)

    da.Fill(dt7, "ADRESSE")

    TextBox6.Text = dRow("NOM").ToString() + " "+ dRow("PRENOM").ToString()

    j'ai quelques erreurs que je n'arrive pas à éliminer

    " Il ne peut exister aucune référence à la variable locale 'cmd' tant que cette variable n'est pas déclarée."  

    et si je la declrare:" La variable locale 'cmd' est déjà déclarée dans le bloc actuel."
     sinon j'ai: nom 'DRow' n'est pas déclaré.

    et si le la declare c'est la variable cmd qui revient en erreur

     

    Pas simple

    Jack

    mardi 10 février 2009 19:06
  •  

    Public Sub FillTextBoxes()

    Dim cn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Documents and Settings\Jacques\Mes documents\Visual Studio 2008\Projects\Marine Application V3\Marine Application V3\CLIENT3.mdb")  

    Dim parameter1 As New OleDbParameter()

    Dim cmd As New OleDbCommand("select * from ADRESSE where NCLIENT=?", cn)

    parameter1.ParameterName = "@NCLIENT" 

    parameter1.OleDbType = OleDbType.VarChar

    parameter1.Value = TextBox18.Text  


    cmd.Parameters.Add(parameter1)

    cmd.CommandType = CommandType.Text

    cn.Open()

    Dim da As New OleDbDataAdapter(cmd)

    Dim dt7 As New DataSet

    da.Fill(dt7, "ADRESSE")    

    cn.Close()

    For Each dRow As DataRow In dt7.Tables("ADRESSE").Rows

    'estimant que "RUE","NOM","PRENON" est le nom du champ

    TextBox6.Text = dRow("NOM").ToString() + " "+ dRow("PRENOM").ToString()
    TextBox8.Text = dRow("RUE")   

    ''Etc....

    Next

     End Sub


    a++


    Dev.Net-Senai Jandira
    • Marqué comme réponse tyjacks mercredi 11 février 2009 12:53
    mercredi 11 février 2009 10:52
  • Super çà marche
    Merci
    mercredi 11 février 2009 12:53