vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
TOP-Angebot: 17 bzw. 24 Entwickler-Vollversionen zum unschlagbaren Preis!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

ADO.NET / Datenbanken
Re: DataView über 2 DataTables? 
Autor: ProXy
Datum: 16.09.08 13:43

Habe inzwischen eine Lösung gefunden, siehe ganz unten!




Ich habe nun versucht, eine berechte Spalte in meine DataTable hinzuzufügen, so wie es dein Beispiel aufzeigt bzw. wie es bei MSDN (http://msdn.microsoft.com/de-de/library/bb979485.aspx) steht.

Ich erhalte allerdings folgende Exception: Ungebundener Verweis im Aggregatausdruck 'System.Data.AggregateNode'.

Eventuell ist die Reihenfolge meiner DataTables falsch..hier mal ein Auszug aus dem Code:

        gdsSet = New DataSet
        gdsSet.Tables.Add(generateTable()) 'Kinder-Tabelle
        gdsSet.Tables.Add(generateGruppen()) 'VaterTabelle
 
 
        drRelation = New DataRelation("relGruppen", gdsSet.Tables( _
          "dtGruppen").Columns("Artikel"), gdsSet.Tables("dtData").Columns( _
          "Artikel"), True)
        gdsSet.Relations.Add(drRelation)
Und hier werden die DataTables erstellt:

    Private Function generateGruppen() As DataTable
        Dim dtTemp As DataTable
 
        dtTemp = New DataTable
        dtTemp.Columns.Add("Artikel", GetType(String))
        dtTemp.Columns.Add("Anzahl", GetType(Integer), "COUNT(Child(" & _
          "dtData).Artikel)")
        dtTemp.TableName = "dtGruppen"
 
        Return dtTemp
    End Function
 
    Private Function generateTable() As DataTable
        Dim dtTemp As DataTable
        dtTemp = sqlDataTable("SELECT Artikel.AR_Nummer," & _
          "Artikelgruppe.AGR_Bezeichnung, Artikel.AR_Bezeichnung FROM Artikel" & _
          "LEFT JOIN Artikelgruppe ON Artikelgruppe.AGR_Nummer =" & _
          "Artikel.FK_AGR_Nummer")
        dtTemp.Columns.Add("Artikel", GetType(String))
        dtTemp.TableName = "dtData"
 
        Return dtTemp
    End Function
Die Spalte Artikel ist in beiden Tabellen vorhanden und bildet den Contraint. Zur Laufzeit erstelle ich Einträge in die Vatertabelle und update die Kindertabelle.

Hast du eine Idee, was ich falsch mache?



Nachtrag: Wenn ich die Expression setze, nachdem die Relation drauf ist, funktioniert alles wie gewollt. Danke für die Mühe!

Beitrag wurde zuletzt am 16.09.08 um 14:09:39 editiert.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
DataView über 2 DataTables?3.145ProXy16.09.08 08:44
Re: DataView über 2 DataTables?2.343ModeratorDaveS16.09.08 11:27
Re: DataView über 2 DataTables?2.239ProXy16.09.08 12:00
Re: DataView über 2 DataTables?2.391ModeratorDaveS16.09.08 12:41
Re: DataView über 2 DataTables?2.541ProXy16.09.08 13:43

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel