Mit mehreren DataSets gleichzeitig arbeiten

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von DrZwockel.

    Mit mehreren DataSets gleichzeitig arbeiten

    Hallöchen in die Runde,

    nachdem ich nun sehr ordentlichen - weil vollständig typisierten Code - habe und mit dem Zugriff auf DataSet und BindingSource ganz gut zurecht komme (dafür habe ich die schönen Extensions von @ErfinderDesRades eingebunden), will ich mal die nächste Stufe zünden.

    Ich habe hier ein Arbeits-DataSet, welches meine Daten zur Bearbeitung beinhaltet, ja, was sonst. Darin sind Haupttabellen und Nebentabellen mit zusätzlichen Informationen zu den Datensätzen in der Haupttabelle. Könnte man auch in eine riesige Tabelle schreiben, allerdings nicht alles, weil es da zum einen 1:n Beziehungen gibt und weil ich denke, dass es übersichtlicher ist, die Daten thematisch zu trennen.

    Ich werde mal konkret. Die Hauptdaten sind Fälle, zu denen weitere Daten herangeholt werden müssen. Die Unterstützung des Benutzers beim "Heranholen" und "auf Vollständigkeit prüfen", sowie das ganze im Überblick zu behalten, gehört zu den Kernkompetenzen des Programms. Dazu werden Flags und Daten gespeichert, wie "Daten vollständig" oder "Daten angefordert am" u.s.w. Die herangeholten Daten werden in den Nebentabellen gespeichert, sobald sie eben verfügbar sind. Die Daten kommen per XML Datei oder als Brief und werden daraus manuell übernommen.

    Für die XML-Dateien habe ich dann noch ein weiteres Import-DataSet, in welches ich superschnell und automatisch XML-Dateien einladen kann. Ihr wisst schon,

    VB.NET-Quellcode

    1. ​DataSetDS02.ReadXml(OpenFileDialogDS02.FileName)
    .
    Die Tabellen des Import-DataSet findet man auch im Arbeits-DataSet, mit den gleichen Datentypen und Beziehungen. Nur die ID des Hauptdatensatzes sollen die Nebentabellen zusätzlich als Fremdschlüssel bekommen.

    Nun lade ich also eine dieser XML Dateien in mein Import-DataSet und muss die Datensätze in mein Arbeits-DataSet kopieren. Natürlich nur Datensätze, die es da noch nicht gibt.
    Jetzt kommen endlich die Fragen ;)

    Muss ich wirklich umständlich in den DataSets herumhühnern und Datensatz für Datensatz aus dem einen in das andere DataSet kopieren oder haben wir da komfortableres Werkzeug und Möglichkeiten? Ich denke da an Anfüge- und Aktualisierungsabfragen (Wortwahl in Anlehnung an MS Access) im DataSet mit einem Designer zusammengeklickt, die man einfach nur noch abfeuert, nachdem die Daten eingelesen wurden. Gibt es sowas?

    Kann man überhaupt DataSet-übergreifend arbeiten "Select from DataSetA into DataSetB"?

    Danke für Anregungen und Hilfe.

    Viele Grüße,
    Oliver
    Hallo ErfinderDesRades,

    ich hätte bezüglich des Threads eine Frage, von welcher Extension OliverSte "geredet" hat, die Deiner Feder entsprungen sein soll ...?

    Würde mich gerne damit mal auseinandersetzen ... 8o

    Gruß vom Doc
    Eine vbp-Forensuche später: DBExtensions
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.

    VaporiZed schrieb:

    Eine vbp-Forensuche später: DBExtensions



    ... hatte ich gemacht ... meine Suche war nur von der Fragestellung nicht zielführend :thumbsup:

    Vielen Dank für die schnelle Hilfe ...

    Gruß vom Doc