Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   FastReport Feststelle, ob neue Seite gedruckt wird (https://www.delphipraxis.net/156858-fastreport-feststelle-ob-neue-seite-gedruckt-wird.html)

AVRWalli 17. Dez 2010 11:39

FastReport Feststelle, ob neue Seite gedruckt wird
 
Hallo zusammen,

ich muß in meinem Programm feststellen, wann FastReport eine neue Seite beginnt. Wie komme ich an diese Information? Bei den Eigenschaften des Reports habe ich nichts finden können.
Im Report selber könnte man das Ereignis des ColumnHeaders(onBeforePrint) nutzen, aber ich brauche die Information in meiner Form.
Ich nutze FastReport 4 und bin für jede Hilfe dankbar.

mfg

AVRWalli

mkinzler 17. Dez 2010 11:42

AW: FastReport Feststelle, ob neue Seite gedruckt wird
 
Aleso bei mir gibt es das Ereignis onPrintPage

AVRWalli 17. Dez 2010 12:08

AW: FastReport Feststelle, ob neue Seite gedruckt wird
 
Hallo mkinzler,

Danke für Deine Antwort.
Das Ereignis wird leider nur beim Drucken der Seite ausgelöst und nicht in der Vorschau.
Gibt es evtl. noch eine Möglichkeit?

mfg
AVRWalli

Lemmy 17. Dez 2010 12:51

AW: FastReport Feststelle, ob neue Seite gedruckt wird
 
Hi,

Du hast echt seltsame Probleme mit FR :-)

Pass uff... das habe ich nie versucht, könnte aber klappen: Wenn DU das Ereignis im Script mit bekommst, dann versuch mal im Code die FR-Komponente zu ermitteln

Delphi-Quellcode:
var oHeader:TFRXColumnHeader;
begin
  oHeader:=TFRXColumnHeader(frxReport1.FindObject('ColumnHeader1'));
  if Assigned(oHeader) then
    oHeader.OnBeforePrint:=
aber nochmal: Ich habe das nie versucht...

in der zugewiesenen Methode kannst Du dann schalten und walten...

Grüße

AVRWalli 17. Dez 2010 13:46

AW: FastReport Feststelle, ob neue Seite gedruckt wird
 
Hallo Lemmy,

Danke für die Antwort.
Als Anfänger habe ich noch die Frage: Wie geht es nach dem oHeader.onBeforePrint:= weiter?

mfg
AVRWalli

RWarnecke 17. Dez 2010 14:03

AW: FastReport Feststelle, ob neue Seite gedruckt wird
 
Zitat:

Zitat von AVRWalli (Beitrag 1069104)
Wie geht es nach dem oHeader.onBeforePrint:= weiter?

Wenn ich Lemmy richtig verstanden habe, müsste da die Funktion aus Deinem Programm stehen.

AVRWalli 17. Dez 2010 15:30

AW: FastReport Feststelle, ob neue Seite gedruckt wird
 
Hallo,

Delphi erwartet an der Stelle einen String, zumindest laut Fehlermeldung wenn ich versuche eine vorh. Procedure anzugeben.

mfg
AVRWalli

mkinzler 17. Dez 2010 15:45

AW: FastReport Feststelle, ob neue Seite gedruckt wird
 
Dann gib mal den namen der Methode an

Lemmy 17. Dez 2010 16:01

AW: FastReport Feststelle, ob neue Seite gedruckt wird
 
Hi,

sorry war beim Friseur...

Da kommt dann der Name der Methode die aufgerufen wird. Ist wie wenn Du zur Laufzeit z.B. bei einem Button eine OnClick Methode zuweist... warte mal...

ah verflixt... geht doch nicht:

http://www.fast-report.com/en/docume...%20handler.htm
[zitat]
It is important to notice that events in FastReport are a procedure declared in the report's script. A string containing its name will be the link to such handler. That is why, for example, unlike the Delphi TNotifyEvent type, which is the method's address, the handler's type in FastReport is a string (the TfrxNotifyEvent type is declared as String [63]).
[/zitat]

Ich weiß jetzt nicht ob es möglich ist aus dem Script raus eine Methode in einer Unti im Programm aufzurufen... ich schau mal ob ich was finde...

GRüße

Sir Rufo 17. Dez 2010 16:34

AW: FastReport Feststelle, ob neue Seite gedruckt wird
 
Ja das geht ... auf jeden Fall über einen kleinen Umweg.

Man kann FastReport (da ist ja FastScript drin) auch um eigene Befehle erweitern.
Darüber kann man dann wieder ansprechen/aufrufen was man will.

Ich such mal ein Beispiel von mir raus (wenn ich vom Sofa wegkomme ;) ) und poste das hier.
Ansonsten steht da (glaube ich) auch was im Forum von FastReport, wie man das erweitern kann.

AVRWalli 18. Dez 2010 14:49

AW: FastReport Feststelle, ob neue Seite gedruckt wird
 
Hallo zusammen,

ich habe die benötigte Function im Moment im Script der Seite implementiert. Die Sache funktioniert soweit ganz gut, außer das ich in meiner Delphi-Form das Ereignis immer noch nicht mitbekomme. Wenn also noch jemand eine Idee hat, immer her damit.

Vielen Dank an alle, die mir geantwortet haben.

mfg
AVRWalli

Sir Rufo 18. Dez 2010 15:32

AW: FastReport Feststelle, ob neue Seite gedruckt wird
 
Was für eine Funktion benötigst du denn?

Du kannst im Report auch eine eigene Variable definieren.
Die Komponente TfrxReport hat eine Methode OnGetValue und die wird jedes Mal aufgerufen, wenn auf eine Variable zugegriffen wird. So könnte der Report Informationen von deiner Anwendung abrufen.

Ansonsten kannst du auch einfach dem Report neue CustomFunctions mitteilen:
http://www.fast-report.com/en/docume...e%20report.htm

AVRWalli 18. Dez 2010 16:43

AW: FastReport Feststelle, ob neue Seite gedruckt wird
 
Hallo Sir Rufo,

den Vorschlag werde ich Morgen ausprobieren und dann berichten.

mfg
AVRWalli

AVRWalli 20. Dez 2010 11:54

AW: FastReport Feststelle, ob neue Seite gedruckt wird
 
Hallo Sir Rufo,

die Idee mit der Variable funktioniert gut.
Habe damit meine Probleme gelöst.
Nochmals Danke an alle.

mfg
AVRWalli


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