![]() |
Fastreport Variable auslesen
Liste der Anhänge anzeigen (Anzahl: 1)
Guten Tag,
nun benöntige ich nochmals Eure Hilfe. Ich möchte in Fastreport, nach dem "Showreport Ereignis" den Wert der Variablen "Page" auslesen. In Fastreport habe ich im Page-Footerband folgendes definiert:
Delphi-Quellcode:
Seite: [<Page> + <startseite> -1]
Für das Auslesen Verwende ich folgendes:
Delphi-Quellcode:
Es wird der in der Anlage beschriebene Fehler ausgegeben.
pSeiten := frxReport1.Variables['<Page>'];
Wenn ich "pSeiten" in eine Intergervariable ändere, wird die gleiche Fehlermeldung ausgegeben, nur mit dem Inhalt, das nicht in den "Typ (Integer)" konvertiert werden kann. Wie greift man den Inhalt von Variablen in Fastreport ab? Vielen Dank für Eure Hilfen im Voraus. |
AW: Fastreport Variable auslesen
Hallo,
laut dem hier ist OnShowReport zu früh ![]() oder dein "<Page>" ist falsch und muss heißen "Page" siehe auch ![]() |
AW: Fastreport Variable auslesen
danke für die Hinweise,
aber auch diese brachten keine Lösung. Wo sonst wenn nicht nach dem "OnShowReport"?, frage ich mich. Irgend wie muss man die Variable doch auslesen können. |
AW: Fastreport Variable auslesen
Hallo,
hast du die <> entfernt? Was für ein Typ ist denn frxReport.Variables? Sieht doch fast aus wie eine StringList oder ähnliches, dann müsste man doch mal alle Variablen auslesen können. Dann weißt du dann auch, wie deine gewünschte Variable heisst. Also F5 drücken und mit F7 mal in den Quell-Code von FastReport schauen. |
AW: Fastreport Variable auslesen
hoika,
habe ich alles versucht. Ich habe nun mit Fastreport Kontakt aufgenommen. Mal abwarten was ich von FR erfahren werde. |
AW: Fastreport Variable auslesen
Hallo,
nun gut aber Zitat:
|
AW: Fastreport Variable auslesen
Die Variablen sind immer vom Typ Variant. Die werden in Fastreport bei der Reporterstellung entsprechend umgewandelt, etwa in String, Integer usw.
Ist teilweise wenig fehlertolerant, wenn z.B. auf Nullwerte zugegriffen wird wirft er Fehlermeldungen und bricht ab. Würde mal OnEndDoc versuchen um an den Wert zu kommen |
AW: Fastreport Variable auslesen
Hi,
das wird alles so nicht funktionieren. Bevor Du eine Variable auslesen kannst, musst Du sie erst einma im Report selbst definieren. Ein einfaches <meinevariable> in einem Label oder anderem rein zu schreiben langt da nicht. Folgendes Vorgehen hat für mich funktioniert: 1. Aufruf des Reports im Editor-Modus ( mReport.DesignReport( true ) ) 2. Anlage eines Variablenverzeichnisses über das Menü Report->Variablen ( zB. "MyVar" ) 3. Nun Hinzufügen einer Variablen in MyVar 4. Einfügen der Variable in ein Memo, Label etc per Doppelklick und "[MeineVar]". 5. Speichern des Reports. Nun kann die Variable im Report angesprochen werden. Nun kannst Du die Variable in Delphi beschreiben oder auslesen.
Delphi-Quellcode:
Alternativ kannst Du die Variable auch so beschreiben
mReport.Variables['MeineVar'] := 15;
Delphi-Quellcode:
Das Geheimnis liegt in der vorherigen Deklaration im Report sonst stehen die auch nicht in der Stringliste drin.
mReport.Variables.AddVariable( 'MyVar', 'MeineVar', 6 );
MfG Quitzlinga [Edit Nachtrag] der Aufruf des Fastreport-Editors geht nur in der Pro-Version |
AW: Fastreport Variable auslesen
so, Paul Gursky von FastReport hat geantwortet:
Zitat:
Delphi-Quellcode:
pSeite := StrToInt(frxReport1.Calc('<Page>'));
Es wird die Summe der Seiten korrekt ausgelesen. Damit ist für mich das Thema beendet. Vielen Dank an allen für Eure Mühen |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:09 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz