Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Fastreport und UserDataSet (https://www.delphipraxis.net/164642-fastreport-und-userdataset.html)

fillibuster 23. Nov 2011 07:57

Datenbank: MySQL • Version: 5.x • Zugriff über: unidac

Fastreport und UserDataSet
 
Hallo,

ich habe eine sehr komplexe Datenbankstruktur (Baum), welche ich in einen Fastreport quetschen möchte. Ich vermute, dass man über das UserDataSet die Daten selbst als String zusammenbauen kann. Das wäre genau das richtige für mich. Kann mir das mal jemand kurz erklären, wie man Daten an das UserDataSet übergibt? Finde in der Dokumentation dazu nichts und die entsprechende Demo läuft nicht.

Vielen Dank und viele Grüße ...

Lemmy 23. Nov 2011 09:33

AW: Fastreport und UserDataSet
 
Hi,

was genau läuft bei der Demo nicht? Du meinst schon die in der MainDemo-App?

Im frxUserDataSet definierst Du die Feldnamen. Anschließend musst Du die Events der Komponente mit Code befüllen, beim CheckEOF z.B. ob der aktuelle Index schon auf den letzten Knoten im Baum zeigt usw.

fillibuster 23. Nov 2011 09:51

AW: Fastreport und UserDataSet
 
Hi,

die MasterDetailUDS Demo läuft nicht. Ich will den Baum einfach nur in einer Tabelle ausgeben. Dafür wollte ich die Daten mit Delphi zusammensetzen und dem Report übergeben. Die Datenbank hat im Prinzip die Struktur id|parent|level, oder kann man mit MySQL rekursive ausgaben tätigen? Dann wäre das ein anderer Weg.

Viele Grüße ...

Lemmy 23. Nov 2011 09:55

AW: Fastreport und UserDataSet
 
Hi,
die Demo habe ich mir angeschaut - funzt bei mir ohne Probleme - was genau geht bei dir nicht? Welche Version von FastReport hast Du gerade im Einsatz?

Rekursives Auslesen in MySQL? Keinen Plan. Unter Firebird hätte ich dir über ne StoredProcedure weiter helfen können.

fillibuster 23. Nov 2011 10:05

AW: Fastreport und UserDataSet
 
Hi,

die kompiliert nicht, weil er die Komponenten nicht findet. In den Libs ist diese aber drin und in anderen Projekten tut die auch. Sehr suspekt.

Viele Grüße ...

Lemmy 23. Nov 2011 10:13

AW: Fastreport und UserDataSet
 
sehr seltsam...

gut, die laufende Anwendung ist nicht sonderlich spektakulär - an den Sourcen kannst Du das aber ja schon mal grundsätzlich sehen wie das ablaufen kann.


Wie speicherst Du den Baum innerhalb von Delphi?

fillibuster 23. Nov 2011 10:20

AW: Fastreport und UserDataSet
 
Hi,
Zitat:

Zitat von Lemmy (Beitrag 1137452)
Wie speicherst Du den Baum innerhalb von Delphi?

Gespeichert wird in der DB. Wollte Ihn aber für den Report aufbereiten (wie ich es auch für die Benutzeroberfläche mache).

Viele Grüße ...

Lemmy 23. Nov 2011 10:41

AW: Fastreport und UserDataSet
 
Hi,

sorry, eben genau das meine ich: Wie liegen die Daten/der Baum in Delphi vor? Ist das eine Stringlist ? Oder eine ObjectList mit Instanzen?

Grüße

fillibuster 23. Nov 2011 10:48

AW: Fastreport und UserDataSet
 
Hi,

generieren tue ich direkt einen Treeview?!

Viele Grüße ...

Lemmy 23. Nov 2011 11:37

AW: Fastreport und UserDataSet
 
Hi,

OK, dann sollte das doch alles gar nicht so schwer sein..

Die Werte würde ich per OnNewGetValue setzte - OnGetValue hatte bei mir schon mal Aussetzer.

in OnGetNewValue kommt dann so was hier:

Delphi-Quellcode:
  if VarName=<Feldname> then
    Value:=<Wert>
Wenn Du nur ein Feld hast, dann kannst Du den Wert auch direkt setzen und die Verzweigung weglassen.

Den Wert nimmst Du dann entweder direkt aus dem Tree - da dann eben alle Knoten durch gehen...


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:49 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz