bonjour à tous,
Alors voila mon problème :
J'ai 4 tables dans ma base de donnée sous sqlserver qui sont : Site, Building, Location et System
Dans la table Site il y a les champs id_Site et Site_Name.
Dans la table Building il y a id_Building, ide_Site et Building_Name.
Dans la table location il y a id_Location, ide_Site et ide_Building
Dans la table System il y a id_System et ide_Location.
Je ne vous fait pas de dessin pour les relations entre les tables vous les avez compris je pense ^^!
Donc en fait j'ai trois combobox : comboboxSite, comboboxBatiment et comboboxSysteme.
Donc quand mon formulaire ce charge je met les donnée de Site_Name dans mon premier combobox :
J'arrive à mettre les donnée dans le combobox batiment en fonction du site selectionné :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Try objConnexion.Open() objCommand.CommandText = "SELECT Site_Name, id_Site FROM ITIL_Site ORDER BY Site_Name" objReader = objCommand.ExecuteReader Do While objReader.Read comboboxSite.Items.Add(objReader.GetString(0)) Loop objReader.Close() objConnexion.Close() Catch ex As Exception MessageBox.Show("L'erreur suivante a été rencontrée :" & ex.Message) End Try
Mais pour je n'arrive pas à récupérer les données de System_Name en fonction du Site et du Batiment sélectionnés en passant par id_Location...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 Try objConnexion.Open() objCommand.CommandText = "SELECT Building_Name FROM ITIL_Building B, ITIL_Site S WHERE S.id_Site = B.ide_Site AND S.Site_Name ='" & comboboxSite.SelectedItem & "'" objReader = objCommand.ExecuteReader Do While objReader.Read comboboxBatiment.Items.Add(objReader.GetString(0)) Loop objReader.Close() objConnexion.Close() Catch ex As Exception MessageBox.Show("L'erreur suivante a été rencontrée :" & ex.Message) End Try
J'ai essayer de récupérer id_Site et id_Building des sites et batiment sélectionné mais cela ne marche pas :
Si vous pouviez m'aider ça serait vraiment sympas car je suis vraiment en galère là...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 Try objConnexion.Open() objCommand.CommandText = "SELECT id_Site FROM ITIL_Site WHERE Site_Name = '" & comboboxSite.SelectedItem & "'" objReader = objCommand.ExecuteReader Dim intID_Site As Integer = objReader.GetInt16(0) objReader.Close() objConnexion.Close() Catch ex As Exception MessageBox.Show("L'erreur suivante a été rencontrée :" & ex.Message) End Try
Partager