You may have better luck if you individually fill each table - I could
never get the "multi fill" thing to work to begin with.
the following worked for me with trees nested 3 nodes deep...
Dim sql As String
Dim DSRptSetup As DataSet
sql = ya
Dim DAReportNames As New SqlClient.SqlDa taAdapter(sql, SqlConn)
sql = yadd
Dim DAReportLineIte ms As New SqlClient.SqlDa taAdapter(sql,
SqlConn)
sql = yadda
Dim DALineItemAccou nts As New SqlClient.SqlDa taAdapter(sql,
SqlConn)
DSRptSetup = New DataSet
DAReportNames.F ill(DSRptSetup, "dtReportNames" )
DAReportLineIte ms.Fill(DSRptSe tup, "dtLineItem s")
DALineItemAccou nts.Fill(DSRptS etup, "dtLineItemAcco unts")
Dim dcLINEITEMSumma ryKey As DataColumn() =
{DSRptSetup.Tab les("dtLineItem s").Columns("rp tCntnt_id"),
DSRptSetup.Tabl es("dtLineItems ").Columns("rpt Names_id")}
Dim dcACCOUNTSummar yKey As DataColumn() =
{DSRptSetup.Tab les("dtLineItem Accounts").Colu mns("rptCntnt_i d"),
DSRptSetup.Tabl es("dtLineItemA ccounts").Colum ns("rptNames_id ")}
DSRptSetup.Rela tions.Add("RptT oLineItem",
DSRptSetup.Tabl es("dtReportNam es").Columns("r ptNames_id"),
DSRptSetup.Tabl es("dtLineItems ").Columns("rpt Names_id"))
DSRptSetup.Rela tions.Add("Line ItemToAccnts",
dcLINEITEMSumma ryKey, dcACCOUNTSummar yKey, False)
then fill trees...
Randy Fraser wrote:
How do I create a relationship on muliple columns in an untyped
dataset.
Why does this not work.
da.Fill(ds)
ds.Tables(0).Ta bleName = "DesignSumm ary"
ds.Tables(1).Ta bleName = "FormulaSummary "
ds.Tables(2).Ta bleName = "MaterialSummar y"
ds.Tables(3).Ta bleName = "ItemUsage"
ds.Tables(5).Ta bleName = "UsageSumma ry"
Dim dcDesignSummary Key As DataColumn() =
{ds.Tables(0).C olumns("WorkOrd erID"),
ds.Tables(0).Co lumns("DesignID "), ds.Tables(0).Co lumns("MachineC ode")}
Dim dcFormulaSummar yKey As DataColumn() =
{ds.Tables(1).C olumns("WorkOrd erID"),
ds.Tables(1).Co lumns("DesignID "), ds.Tables(1).Co lumns("MachineC ode")}
Dim dcMaterialSumma ryKey As DataColumn() =
{ds.Tables(2).C olumns("WorkOrd erID"),
ds.Tables(2).Co lumns("DesignID "), ds.Tables(2).Co lumns("MachineC ode")}
Dim dcItemUsageSumm aryKey As DataColumn() =
{ds.Tables(3).C olumns("WorkOrd erID"),
ds.Tables(3).Co lumns("DesignID "), ds.Tables(3).Co lumns("MachineC ode")}
ds.Relations.Ad d("DesignFormul aRelation",
dcDesignSummary Key, dcFormulaSummar yKey, False)
ds.Relations.Ad d("DesignMateri alRelation",
dcDesignSummary Key, dcMaterialSumma ryKey, False)
ds.Relations.Ad d("DesignItemUs eageRelation",
dcDesignSummary Key, dcItemUsageSumm aryKey, False)
Best Regards
Randy