Laden...

Aus DataView neues DataSet erstellen

Erstellt von AlfameisterT vor 18 Jahren Letzter Beitrag vor 18 Jahren 2.667 Views
A
AlfameisterT Themenstarter:in
154 Beiträge seit 2005
vor 18 Jahren
Aus DataView neues DataSet erstellen

Hallo,

Wie kann ich aus einem DataView (abgeleitet aus einem DataSet) ein neues DataSet erstellen.

Problem:
CrystalReport kann mit einem DataView nichts anfangen und verlangt ein DataSet. Wenn man nun einen Unterauswahl anzeigen möchte, müßte man eine neue DB-Abfrage starten und einen Filter einsetzten.
Diesen Umweg wollte ich mir aber ersparen.

.

N
4.644 Beiträge seit 2004
vor 18 Jahren

DataSet ds = dataView.Table.DataSet;

F
10.010 Beiträge seit 2004
vor 18 Jahren

Da ist gerade etwas sehr interessantes auf www.planet-source-code.com erschienen.

SQL-Engine nennt sich das, und ermöglicht einfache SQL-Befehle
( mit Where, Join, Order by usw ) auf ein DataSet abzusetzen.

Dein DataView wird ja warscheinlich einen Rowfilter benutzen.

Ansonsten müsstest Du den View Row für Row in ein neues
DataSet copieren.

A
AlfameisterT Themenstarter:in
154 Beiträge seit 2005
vor 18 Jahren

@Noodles

leider nicht, bekomme da nur ne Referenz auf das eigentlich DataSet, d.h. wieder alle Datensätze.

@FZelle
So wie ich das verstanden habe ist das für MS SQL Server.
Interessant, benutze aber MySQL.

F
10.010 Beiträge seit 2004
vor 18 Jahren

Falsch verstanden.
Das ding arbeitet auf ein DataSet, und das ist unabhängig von der DB.

Es benutzt lediglich eine an T-SQL angelehnte Syntax.

N
4.644 Beiträge seit 2004
vor 18 Jahren

Original von AlfameisterT
@Noodles

leider nicht, bekomme da nur ne Referenz auf das eigentlich DataSet, d.h. wieder alle Datensätze.

Ja klar, sorry. Na dann, Row für Row eine neue Table erstellen und in ein DataSet einfügen.

4.221 Beiträge seit 2005
vor 18 Jahren

Als Alternative käme ev. List & Labels in Frage.... dort kannst Du die Werte direkt übergeben (kostet allerdings auch was)

Früher war ich unentschlossen, heute bin ich mir da nicht mehr so sicher...

A
AlfameisterT Themenstarter:in
154 Beiträge seit 2005
vor 18 Jahren

@Programmierhans
Das hatte ich eh vor mal anzuschauen. CrystalReports ist auch nicht gerade günstig.

@Noodles
Denke, so werde ich das dann auch machen.
Dachte nur es gäbe ne vorhandene Möglichkeit.

.

F
10.010 Beiträge seit 2004
vor 18 Jahren

Ist dir die SqlEngine zu einfach?

A
AlfameisterT Themenstarter:in
154 Beiträge seit 2005
vor 18 Jahren

@FZelle

habe ich tatsächlich falsch verstanden 😁

Hab mir das jetzt mal genauer angeschaut. Letztendlich passiert da dasgleich, dass manuel eine Table erzeugt wird. Ist für manche Probleme sicher ganz praktisch.

Mir langt es für diesen einen Fall einen Filter über DataView zu setzten und dieses vor der Rückgabe dann nochmal neu zu verpacken. Prinzipiell können ja doch viele Klassen mit dem DataView etwas anfangen.

Trotzdem thx.