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

Windows Forms Discussion :

comment alimenter une combobox à partir d'une requete


Sujet :

Windows Forms

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2008
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 52

    Informations forums :
    Inscription : Avril 2008
    Messages : 23
    Points : 20
    Points
    20
    Par défaut comment alimenter une combobox à partir d'une requete
    Bonjour,

    J'ai un problème pour alimenter une combobox à partir d'une requete.

    Voici le programme :

    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 strConn As String
            strConn = "Driver={Client Access ODBC Driver (32-bit)};System=192.168.109.3;Uid=BADGE;Pwd=GTIVDR"
            Dim strSql As String
            strSql = "SELECT CDANC, CDMOIC, CDJOUC, CDANSE, CDNOSE, CDNBJ, CDTP08, CDANCP, CDANEX FROM BADGEV5F.PCALND WHERE CDANC = " & Now.Year & " AND CDMOIC = " & Now.Month & " AND CDJOUC = " & Now.Day & ""
            Dim conn As System.Data.Odbc.OdbcConnection
            conn = New System.Data.Odbc.OdbcConnection(strConn)
            conn.Open()
            Dim CmdS As System.Data.Odbc.OdbcCommand
            CmdS = New Odbc.OdbcCommand(strSql)
            Dim da As Odbc.OdbcDataAdapter
            da = New Odbc.OdbcDataAdapter(CmdS)
            CmdS.Connection() = conn
            Dim ds As DataSet
            da.Fill(ds, "BADGEV5F.PCALND")
            Dim dt As DataTable
            dt = ds.Tables("BADGEV5F.PCALND")
            Form3.CbAnnee.DisplayMember = "CDANC"
            Form3.CbAnnee.DataSource = ds.Tables("BADGEV5F.PCALND")
            Form3.CbAnnee.Refresh()
            Form3.Show()
    Quand je lance de débug voici le message
    La valeur ne peut être Null.
    Pouvez vous m'aider ?
    Merci d'avance.

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    162
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 162
    Points : 69
    Points
    69
    Par défaut
    a quelle ligne le message d'erreur s'affiche ?

  3. #3
    Membre à l'essai
    Inscrit en
    Décembre 2008
    Messages
    29
    Détails du profil
    Informations personnelles :
    Âge : 34

    Informations forums :
    Inscription : Décembre 2008
    Messages : 29
    Points : 10
    Points
    10
    Par défaut
    Déjà en mettant les balises code sa serait plus clair ^^
    Ensuite même question à quel ligne ton programme plante ?

  4. #4
    Membre à l'essai
    Inscrit en
    Avril 2008
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 52

    Informations forums :
    Inscription : Avril 2008
    Messages : 23
    Points : 20
    Points
    20
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    da.Fill(ds, "BADGEV5F.PCALND")

    Merci

  5. #5
    Membre à l'essai
    Inscrit en
    Février 2009
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 31
    Points : 10
    Points
    10
    Par défaut DataAdapter
    si tu programme avec vs 2005

    il faut faire :

  6. #6
    Membre actif Avatar de AJemni
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2008
    Messages
    242
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2008
    Messages : 242
    Points : 290
    Points
    290
    Par défaut
    Ajoute

  7. #7
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Février 2009
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2009
    Messages : 66
    Points : 53
    Points
    53
    Par défaut
    Voila comment j'ai rempli ma comboxBox sur ma dernière application en vb.net 2005
    A partir d'une Connexion a une base de donnée SQL server 2005

    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
     Private Sub UserControl_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            'Declare la connection
            Dim Connect As New System.Data.SqlClient.SqlConnection("Persist Security Info=False;Integrated Security=False;uid =id; password =tonpassword;Initial Catalog=Tabase;server=tonserveur")
     
            'Ouvre la Connection
            Connect.Open()
     
            'Requete sql
            Dim myCommand As New SqlCommand("SELECT Action FROM T_REF_ACTION", Connect)
            Dim myReader As SqlDataReader
            myReader = myCommand.ExecuteReader()
     
            'initialisation du combobox
            ComboBox_Action.Items.Clear()
     
            'Tant que la table n'est pas vide on incremente la combobox
            Do While myReader.Read()
                ComboBox_Action.Items.Add(myReader.GetString(0))
            Loop
     
            myReader.Close()
            Connect.Close()
    Et c'est vrai qu'avec les balise Code se serait plus lisible

    J'espère que ca peut t'aider

    Carmel_O

  8. #8
    Membre actif Avatar de AJemni
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mai 2008
    Messages
    242
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2008
    Messages : 242
    Points : 290
    Points
    290
    Par défaut
    Je pense qu'un petit Try...catch assure un bon fonctionnement de votre code :
    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
     
    Private Sub UserControl_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            'Declare la connection
            Dim Connect As New System.Data.SqlClient.SqlConnection("Persist Security Info=False;Integrated Security=False;uid =id; password =tonpassword;Initial Catalog=Tabase;server=tonserveur")
     
            'Ouvre la Connection
            Connect.Open()
     
            'Requete sql
            Dim myCommand As New SqlClient.SqlCommand("SELECT Action FROM T_REF_ACTION", Connect)
            Dim myReader As SqlClient.SqlDataReader
            Try
                myReader = myCommand.ExecuteReader()
     
                'initialisation du combobox
                ComboBox_Action.Items.Clear()
     
                'Tant que la table n'est pas vide on incremente la combobox
                Do While myReader.Read()
                    ComboBox_Action.Items.Add(myReader.GetString(0))
                Loop
     
                myReader.Close()
                Connect.Close()
            Catch ex As Exception
                If myReader IsNot Nothing Then
                    If Not myReader.IsClosed Then myReader.Close()
                End If
                Throw ex
            End Try
     
        End Sub

  9. #9
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Février 2009
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2009
    Messages : 66
    Points : 53
    Points
    53
    Par défaut
    Je vois ce que tu veux faire mais j'ai mis qu'une petite parti de mon code juste pour aider jo12260 "l'orienter".
    Mais je vais potasser ça

    Merci Ajemni

    Carmel_O

Discussions similaires

  1. [XL-2003] Affichage d'une feuille à partir d'une combobox
    Par JulienLeno dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 12/08/2011, 11h30
  2. Réponses: 11
    Dernier message: 31/08/2010, 09h49
  3. alimenter un combobox à partir d'une base de données
    Par phenix1988 dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 09/05/2010, 13h38
  4. Réponses: 4
    Dernier message: 04/05/2009, 12h12
  5. Réponses: 2
    Dernier message: 05/01/2009, 12h45

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