| re: Multiple Key Relations
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.SqlDataAdapter(sql, SqlConn)
sql = yadd
Dim DAReportLineItems As New SqlClient.SqlDataAdapter(sql,
SqlConn)
sql = yadda
Dim DALineItemAccounts As New SqlClient.SqlDataAdapter(sql,
SqlConn)
DSRptSetup = New DataSet
DAReportNames.Fill(DSRptSetup, "dtReportNames")
DAReportLineItems.Fill(DSRptSetup, "dtLineItems")
DALineItemAccounts.Fill(DSRptSetup, "dtLineItemAccounts")
Dim dcLINEITEMSummaryKey As DataColumn() =
{DSRptSetup.Tables("dtLineItems").Columns("rptCntn t_id"),
DSRptSetup.Tables("dtLineItems").Columns("rptNames _id")}
Dim dcACCOUNTSummaryKey As DataColumn() =
{DSRptSetup.Tables("dtLineItemAccounts").Columns(" rptCntnt_id"),
DSRptSetup.Tables("dtLineItemAccounts").Columns("r ptNames_id")}
DSRptSetup.Relations.Add("RptToLineItem",
DSRptSetup.Tables("dtReportNames").Columns("rptNam es_id"),
DSRptSetup.Tables("dtLineItems").Columns("rptNames _id"))
DSRptSetup.Relations.Add("LineItemToAccnts",
dcLINEITEMSummaryKey, dcACCOUNTSummaryKey, False)
then fill trees...
Randy Fraser wrote:[color=blue]
> How do I create a relationship on muliple columns in an untyped[/color]
dataset.[color=blue]
>
> Why does this not work.
>
> da.Fill(ds)
> ds.Tables(0).TableName = "DesignSummary"
> ds.Tables(1).TableName = "FormulaSummary"
> ds.Tables(2).TableName = "MaterialSummary"
> ds.Tables(3).TableName = "ItemUsage"
> ds.Tables(5).TableName = "UsageSummary"
> Dim dcDesignSummaryKey As DataColumn() =
> {ds.Tables(0).Columns("WorkOrderID"),[/color]
ds.Tables(0).Columns("DesignID"),[color=blue]
> ds.Tables(0).Columns("MachineCode")}
> Dim dcFormulaSummaryKey As DataColumn() =
> {ds.Tables(1).Columns("WorkOrderID"),[/color]
ds.Tables(1).Columns("DesignID"),[color=blue]
> ds.Tables(1).Columns("MachineCode")}
> Dim dcMaterialSummaryKey As DataColumn() =
> {ds.Tables(2).Columns("WorkOrderID"),[/color]
ds.Tables(2).Columns("DesignID"),[color=blue]
> ds.Tables(2).Columns("MachineCode")}
> Dim dcItemUsageSummaryKey As DataColumn() =
> {ds.Tables(3).Columns("WorkOrderID"),[/color]
ds.Tables(3).Columns("DesignID"),[color=blue]
> ds.Tables(3).Columns("MachineCode")}
> ds.Relations.Add("DesignFormulaRelation",[/color]
dcDesignSummaryKey,[color=blue]
> dcFormulaSummaryKey, False)
> ds.Relations.Add("DesignMaterialRelation",[/color]
dcDesignSummaryKey,[color=blue]
> dcMaterialSummaryKey, False)
> ds.Relations.Add("DesignItemUseageRelation",[/color]
dcDesignSummaryKey,[color=blue]
> dcItemUsageSummaryKey, False)
>
>
> Best Regards
> Randy[/color] |