Hallo Community und @ErfinderDesRades
Ich möchte bei der ParentTable einige Datensätze, die eine WHERE-Klausel erfüllen, von der DB laden.
Dabei sollen alle ChildTables die mit der ParentTable verknüpft sind ihre Daten geladen bekommen.
Wenn nur ein Parent-Datensatz geladen wird, sind auch die ChildTables ordentlich geladen.
Aber bei Ladung mehrerer Parent-Datensätze sind in allen ChildTable nur mehr die zugeordneten Datensätze vom zuletzt geladenen Parent-Datensatz vorhanden.
Hier funkt mir immer die
Gibt es hierzu eine andere Möglichkeit, damit alle geladenen Childdatensätze erhalten bleiben?
Ich habe im DBExtensions-Framework dazu keine andere Methode finden können?
Lg VB1963
Ich möchte bei der ParentTable einige Datensätze, die eine WHERE-Klausel erfüllen, von der DB laden.
Dabei sollen alle ChildTables die mit der ParentTable verknüpft sind ihre Daten geladen bekommen.
Wenn nur ein Parent-Datensatz geladen wird, sind auch die ChildTables ordentlich geladen.
Aber bei Ladung mehrerer Parent-Datensätze sind in allen ChildTable nur mehr die zugeordneten Datensätze vom zuletzt geladenen Parent-Datensatz vorhanden.
Hier funkt mir immer die
ClearBeforeFill
-Eigenschaft hinein, die intern auf True
vor eingestellt ist und vor dem Füllvorgang die ChildTable leert...Gibt es hierzu eine andere Möglichkeit, damit alle geladenen Childdatensätze erhalten bleiben?
Ich habe im DBExtensions-Framework dazu keine andere Methode finden können?
VB.NET-Quellcode
- Public Sub LoadDatas(P1 As Integer, P2 As Integer, P3 As Integer)
- Dim ChildTables() As DataTable = {myDts.ChildTable1, myDts.ChildTable2, myDts.ChildTable3}
- With myDts
- .Save(Me, True)
- .ParentTable.Fill("WHERE P1=? AND P2=? AND P3=?", {P1, P2, P3}) 'hier ist das Leeren ok
- For Each r In .ParentTable
- r.FillChildTables(ChildTables) ' aber hier sollten die Daten in der Tabelle bleiben...
- Next
- End With
- End Sub
Lg VB1963
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „VB1963“ ()