Combobox

spamito Messages postés 183 Date d'inscription samedi 24 mars 2007 Statut Membre Dernière intervention 30 mars 2013 - 18 juin 2007 à 21:06
TeBeCo Messages postés 467 Date d'inscription lundi 24 juin 2002 Statut Membre Dernière intervention 9 mars 2011 - 28 juin 2007 à 18:23
Aidez moi SVP.

Je suis entrain de réaliser un projet VB.NET et SQL Server 2000. Mon problème est le suivant :
- J'ai créé un combobox et j'ai relié ce dernier à une table SQL Server en entrant le code suivant :
Try
     theme.DataSource = dsdata.Tables("theme")
     theme.DisplayMember = "theme"
     theme.ValueMember = "codetheme"
     theme.Refresh()
Catch ex As Exception
     MessageBox.Show(ex.Message, "Remplir")
End Try
Quand j'appui sur le bouton Enregistrer, un message d'erreur s'affiche en me disant que la valeur ou le type de données n'est pas correcter. Donc j'aimerai bien qu'au lieu d'enregistrer le "theme" enregistrer plutot le "code theme" dans une table que j'avais bien précisé ( la table formation).
Car ce n'est pas le cas dans mon code, il m'enregistre le "theme" et dans la table formation, j'ai déclaré le champs "int".
Peut être je n'étais pas clair, mais c'est difficile d'expliquer comme ça.

MERCI LES GARS.

7 réponses

TeBeCo Messages postés 467 Date d'inscription lundi 24 juin 2002 Statut Membre Dernière intervention 9 mars 2011
18 juin 2007 à 21:58
j'ai du mal a suivre tes tournure de phrase serieux :s
essaye de mettre aussi le code ou tu declare le dataset, datatable, remplissage et si t'avais en prime une description champ pars champ de la table SQL
(cela dit en general j'avais l'habitude de mettre un dataset directment dans le "datasource" mais je doit me tromper pour ce cas precis)

TeBeCo
0
spamito Messages postés 183 Date d'inscription samedi 24 mars 2007 Statut Membre Dernière intervention 30 mars 2013
18 juin 2007 à 22:10
'Déclaration
Public Class frmsessionp
    Inherits System.Windows.Forms.Form
    Dim connexion As New SqlClient.SqlConnection
    Dim daformation As New SqlClient.SqlDataAdapter
    Dim datheme As New SqlClient.SqlDataAdapter
    Dim dsformation As New Dataset
    Dim dstheme As New Dataset

Private Sub frmsessionp_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
connexion.ConnectionString = "workstation id=SERVPROJECT;packet size=4096;integrated security=SSPI;data source='.';persist security info=False;initial catalog=base"
        connexion.Open()
        daformation = New SqlClient.SqlDataAdapter("select * from formation", connexion)
        datheme = New SqlClient.SqlDataAdapter("select * from theme", connexion)
        daformation.Fill(dsdata)
        datheme.Fill(dstheme)
        cmdbuilder = New SqlClient.SqlCommandBuilder(daformation)
        daformation.InsertCommand = cmdbuilder.GetInsertCommand
        champs()
End Sub

Sub champs()
        'Combobox "thème"
        Try
            theme.DataSource = dsdata.Tables("theme")
            theme.DisplayMember = "theme"
            theme.ValueMember = "codetheme"
            theme.Refresh()
        Catch ex As Exception
        End Try
End Sub

Private Sub Enregistrer_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        dr = dsdata.Tables("formation").NewRow
        dr(1) = typef.Text & ""
        dsdata.Tables(0).Rows.Add(dr)
        daformation.Update(dsdata)
        MsgBox("Ajout terminé avec succès !!!", MsgBoxStyle.Information, "Enregistrement")
End Sub
0
TeBeCo Messages postés 467 Date d'inscription lundi 24 juin 2002 Statut Membre Dernière intervention 9 mars 2011
18 juin 2007 à 22:39
plusieur point a éclairer :
dr => je devienne que c'est un DataRow j'espere que tu le declare bien qqpart
dsdata => déclaré ou comment quelle config ?
daformation.Update(dsdata) <=== pour moi la ligne est inutile (complement inutile) etant donné que null part tu ne remplis les InsertCommand, DeleteCommand et UpdateCommand de ton dataadapter

je vais tester demain si j'ai un peu de temps a moi j'ai un peu de mal ce soir :s

TeBeCo
0
spamito Messages postés 183 Date d'inscription samedi 24 mars 2007 Statut Membre Dernière intervention 30 mars 2013
18 juin 2007 à 22:53
c une erreure. Au lieu de dsdata c'est dsformation.
ok j'attendrai avec patience. MERCI
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
TeBeCo Messages postés 467 Date d'inscription lundi 24 juin 2002 Statut Membre Dernière intervention 9 mars 2011
18 juin 2007 à 23:06
pour ce qui est du ".update" tu a compris j'espere qu'il sert a rien avec ce code la ?

TeBeCo
0
slim_ingenieur Messages postés 1 Date d'inscription jeudi 28 juin 2007 Statut Membre Dernière intervention 28 juin 2007
28 juin 2007 à 18:05
j'ai une probleme .le code suivant ne marche pas .mon but et de remplir un combobox à  partir d'une table qui s'appele dans mon code intervention
et remplir seulement le champ type carburant

Dim



maCommande

As



New
SqlCommand("select typecarburant from intervention", maConnection)


Dim
monAdapter

As



New
SqlDataAdapter(maCommande)


Dim
monSet

As



New
DataSet


'Alimenter le dataset

monAdapter.Fill(monSet, "select typecarburant from intervention")







Try

ComboBox_typecarburant.DataSource = monSet.Tables("intervention")


ComboBox_typecarburant.DisplayMember = "typecarburant"







Catch
ex

As
ExceptionMsgBox("Exception : " & ex.Message)


Finally






End



Try
0
TeBeCo Messages postés 467 Date d'inscription lundi 24 juin 2002 Statut Membre Dernière intervention 9 mars 2011
28 juin 2007 à 18:23
faudrais que tu dise ce qui va pas au passage
ya une erreur ?
c'est vide ?
ect ...

TeBeCo
0