Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Werkzeuge (https://www.delphipraxis.net/63-sonstige-werkzeuge/)
-   -   fastReport und ShowReport (https://www.delphipraxis.net/98579-fastreport-und-showreport.html)

DevStar 29. Aug 2007 12:01


fastReport und ShowReport
 
Hallo,

habe folgende Frage zu FastReport 3

Leider finde ich kein Code-Beispiel zum "Progressbar".

Delphi-Quellcode:
Showprogess := true;
OldStyleProgress := true;
funktioniert ja. Allerdings will ich nicht die Seitenzahlen dargestellt haben, sonden eine Progressbar.

Wer hat ein passendendes Code-Schnippsel parat? Mit Google war ich erfolglos.

Danke im vorraus.

Gruß DevStar

Memo 29. Aug 2007 13:40

Re: fastReport und ShowReport
 
Ich habe nur FR4, aber in der Hilfe steht:
Zitat:

property OnProgressStart : TfrxProgressEvent;

Description
This event is fired at start of some continuos operation (print, export, run report). The event handler may display a dialog window with progress bar. Progress parameter is a page number which is currently processed.
Vllt. gabs das in FR3 auch schon.

DevStar 29. Aug 2007 17:16

Re: fastReport und ShowReport
 
Ja, da gibt es einige Möglichkeiten. Das ist schon richtig.
Nur ist es nicht kommentiert und es gibt nirgends ein Beispiel.

FR hat wohl einen eigenen Progress-Dialog (nicht der Oldstyle).

Im Prinzip brauche ich ja nur die Seitenzahl im vorraus wissen und an die Progressbar übergeben.
Der Report musss dann im Hintergrund erstellt werden.

Leider weiss ich nicht wie ich anfangen soll.
Hat jemand schon so etwas für FastReport erstellt?

Ich habe einen Report, der seine Daten aus sieben SQL-Dateien holt und knapp 200 Seiten daraus erstellt.
Das dauert natürlich, deshalb wäre die "richtige" Progressbar schon optimal.

Gruß DevStar

DevStar 29. Aug 2007 22:19

Re: fastReport und ShowReport
 
Keiner Ideen? :wall:


Gute Nacht :wink:

alzaimar 30. Aug 2007 07:06

Re: fastReport und ShowReport
 
Probiers doch einfach mal aus.

OnProgressStart: Erzeugt ein nichtmodales Fenster mit ProgressForm.Show, sowie der Initialisierung der Progressbar.
OnProgress: Setzt den Balken der Progressbar (und ruft ggf. Application.Processmessages auf)
OnProgressStop: Entfernt die ProgressForm.

Ist doch ganz einfach.

Wichtig ist nur, das beim ersten Durchlauf die Gesamtanzahl der Seiten noch nicht bekannt ist. Daher wirst Du wohl erst im zweiten Durchlauf (Engine.FinalPass = True) eine Progressbar anzeigen können. Wenn dein Report aber immer +/- 200 Seiten hat, dann setzt Du eben beim 1.Durchlauf ProgressBar.Max auf 200.

DevStar 30. Aug 2007 09:33

Re: fastReport und ShowReport
 
Danke erstmal.

Die Befehle habe ich zwar gefunden, jedoch weiss ich nicht welche Parameter ich übergeben muss. Daran hakt es nämlich.

Sender (TfrxReport)

ProgressType (TfrxProgressType)

Progress (Integer)

Gebe ich bei Sender meinen Report an, so gibt es eine Access Violation :wall:


Hat denn jemand ein Beispiel? :gruebel:

Danke schon im vorraus.

DevStar

alzaimar 30. Aug 2007 09:44

Re: fastReport und ShowReport
 
Der Sender sagt dir, welches Objekt die Nachricht geschickt hat.
Las Dir einfach mal Progress und ProgressType anzeigen. Verändern musst du da nichts.

DevStar 30. Aug 2007 11:23

Re: fastReport und ShowReport
 
Ich gebs auf.... :wall:

Immer Access Violation...

Zugriffsverletzung bei Adresse 00000000000

Ohne Codebeispiel komme ich nicht weiter.

Mit der alten Progressbar (Oldstyle) klappt es ja wunderbar.

alzaimar 30. Aug 2007 11:25

Re: fastReport und ShowReport
 
Zeig mal deinen Code. AV at 00000000 bedeutet, das Du irgendein Objekt nicht instantiiert hast.

DevStar 30. Aug 2007 11:38

Re: fastReport und ShowReport
 
Delphi-Quellcode:
try
  Report.PepareReport;
  Report.Showprogress := true;
  Report.OnProgressStart (Report, ptRunning, iPages);
finally
  Report.ShowPreparedReport;
  Report.OnProgressStopp (Report, ptRunning, iPages);
end;
Musste eben alles abtippen, da der Delphi-PC nicht am Internet hängt.

Gruß DevStar


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:33 Uhr.
Seite 1 von 2  1 2      

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