I've got 3 tables. Table1 is the master table and tables 2 & 3 are detail tables related to table1. On the VB.net Windows form I've added several textboxes binded to table1 as a header and a tabcontrol containing seperated pages for each detail table. Each containing a datagrid and navigator. I've managed to setup a relation between table1 and table2 and all the controls works fine but for the life of me I can't get the relation between table1 and table3 to work. Neither the navigator nor the grid is working properly. Please help. Below is the code I use:
Thanks in advance.
Code:
Dim daMatchSetup As Odbc.OdbcDataAdapter
Dim daTable2 As Odbc.OdbcDataAdapter
Dim daTable3 As Odbc.OdbcDataAdapter
Dim parentCol2() As DataColumn
Dim childCol2() As DataColumn
Dim parentCol3() As DataColumn
Dim childCol3() As DataColumn
Dim rel2 As DataRelation
Dim rel3 As DataRelation
Try
MyConn.Open()
MyDataSet = New DataSet
daTable1 = New Odbc.OdbcDataAdapter
MyDataSet = GetDataSet(MyDataSet, MyConn, daTable1, _
"SELECT * FROM table1", "table1")
daTable2 = New Odbc.OdbcDataAdapter
MyDataSet = GetDataSet(MyDataSet, MyConn, daTable2, _
"SELECT * FROM table2", "Table2")
daTable3 = New Odbc.OdbcDataAdapter
MyDataSet = GetDataSet(MyDataSet, MyConn, daTable3, _
"SELECT * FROM table3", "Table3")
Catch
End Try
MyConn.Close()
parentCol2 = New DataColumn() {MyDataSet.Tables("table1").Columns("Table1_Field1"), MyDataSet.Tables("Table1").Columns("Table1_field2")}
childCol2 = New DataColumn() {MyDataSet.Tables("Table2").Columns("Table1_field1"), MyDataSet.Tables("Table2").Columns("Table1_field2")}
rel2 = New DataRelation("Table1_Table2", parentCol2, childCol2)
rel2.Nested = True
MyDataSet.Relations.Add(rel2)
parentCol3 = New DataColumn() {MyDataSet.Tables("Table1").Columns("Table1_field1"), MyDataSet.Tables("Table1").Columns("Table1_field2")}
childCol3 = New DataColumn() {MyDataSet.Tables("Table3").Columns("Table1_field1"), MyDataSet.Tables("Table3").Columns("Table1_field2")}
rel3 = New DataRelation("Table1_Table3", parentCol3, childCol3)
rel3.Nested = True
MyDataSet.Relations.Add(rel3)
frmTest.bnsTable1.DataSource = MyDataSet
frmTest.bnsTable1.DataMember = "table1"
frmTest.bnsTable2.DataSource = frmTest.bnsTable1
frmTest.bnsTable2.DataMember = "Table1_Table2"
frmTest.bnsTable3.DataSource = frmTest.bnsTable1
frmTest.bnsTable3.DataMember = "Table1_Table3"
frmTest.bnvTable1.BindingSource = frmTest.bnsTable1
frmTest.bnvTable2.BindingSource = frmTest.bnsTable2
frmTest.bnvTable3.BindingSource = frmTest.bnsTable3
frmTest.dgvTable2.DataSource = frmTest.bnsTable1
frmTest.dgvTable2.DataMember = "Table1_Table2"
frmTest.dgvTable3.DataSource = frmTest.bnsTable1
frmTest.dgvTable3.DataMember = "Table1_Table3"