Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Quickreport und NeedData (https://www.delphipraxis.net/113247-quickreport-und-needdata.html)

Privateer3000 5. Mai 2008 09:16


Quickreport und NeedData
 
Hallöchen,

kann man im onNeedData eines Quickreports
direkt eine sql-abfrage starten,
oder müssen grundsätzlich immer Daten
ausserhalb des Reports erst aufbereitet werden?


Grüße

MrSpock 5. Mai 2008 10:12

Re: Quickreport und NeedData
 
Hallo Privateer3000,

du kannst grundsätzlich eine SQL Abfrage im OnNeedData Event starten. Dieses Event wird aber für jede "Zeile" aufgerufen. Du müsstest es deshalb in der Prozedur beschränken:

Delphi-Quellcode:
...
if FirstTime then
begin
   FirstTime := False;
   // Hier die SQL Abfrage und ersten Datensatz ausgeben
end
else
  // Hier alle weiteren datensätze ausgeben
[edit]Wenn du aber eine SQL Abfrage hast, solltest du prüfen, ob du das OnNeedData Ereignis überhaupt nutzen willst. Im Wesentlichen wird es genutzt, wenn du KEINE Datenmenge hast.[/edit]

Privateer3000 5. Mai 2008 12:29

Re: Quickreport und NeedData
 
Vielen Dank Spocki,
aber woher die Daten sonst nehmen ohne eine Form
vorher zu benutzen? Es soll eben direkt der Report
aufgerufen werden der auch die Daten einsammeln soll...

MrSpock 5. Mai 2008 13:21

Re: Quickreport und NeedData
 
Hallo Privateer3000,

du kannst deine Query z.B. in ein Datenmodul packen und über die Eigenschaft DataSource der QuickReport Komponente zuordnen. Im Detailband kannst du dann direkt auf die Felder der Datenmenge zugreifen. Du benötigst dazu dann nicht das OnNeedData Event.

Privateer3000 6. Mai 2008 07:39

Re: Quickreport und NeedData
 
Danke spocki,
mit DatenModulen habe ich noch nichts weiter zu tun gehabt
ausser dort eine Connection festzulegen.
Da es sich ja nicht um eine normales Form handelt,
wie werden die querys da nun reingepackt?
Mit methoden oder funktionen?

Grüße

MrSpock 6. Mai 2008 08:25

Re: Quickreport und NeedData
 
Hallo Privateer3000,

unter Datei | Neu findest du unter Delphi Dateien das "Datenmodul". Füge ein solches deiner Anwendung hinzu. In das so erscheinende Formular kannst du einfach alle Datenmengen, also auch Queries, ablegen. In deinem Report wählst du Unit verwenden aus dem Datei Menü und wählst das Datenmodul aus. Jetzt kannst du die QuickReport Komponente schon mit der Datenmenge (Query) verbinden.

Privateer3000 6. Mai 2008 09:09

Re: Quickreport und NeedData
 
Danke Spocki,
wie werden die querys da nun abgelegt,
ich habe das noch immer nicht verstanden...
Ich habe ja schon eine Datenmodul (mit der Connection)
muss ein neues erzeugt werden oder kann ich das auch verwenden.

:-(

Privateer3000 6. Mai 2008 14:32

Re: Quickreport und NeedData
 
Danke Spocki,
habs gepackt. Jetzt läufts so wie ich will :-)


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:41 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