Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Fastreport -Variable richtig erstellen und verwenden (https://www.delphipraxis.net/166392-fastreport-variable-richtig-erstellen-und-verwenden.html)

cugar 11. Feb 2012 06:57

Fastreport -Variable richtig erstellen und verwenden
 
Hi,
möchte in meinem Ausdruck das Drucken von einem Logo steuern.
Habe eine Variable im Designer erstellt: Kategorie: Allgemein Variable: LogoON

Wie teile ich Fastreport mit das es eine boolean-Variable ist?? Muss man das?

Auf eine "BerichtsTitel"-String-Variable greife ich aus Delphi mit: frxReport1.Variables['BerichtsTitel']:= ''''+Trim(AdvEdit1.Text)+''''; zu, es funktioniert.

Aber frxReport1.Variables['LogoOn']:=AdvOfficeCheckBox2.Checked; ist falsch. Muss ich da die Kategorie miteingeben, wenn ja wo (so: ['Allgemein'.'LogoOn']?)


Script im Designer:
procedure Picture1OnBeforePrint(Sender: TfrxComponent);
begin
Picture1.visible:=True;
if [LogoOn]=False then
Picture1.visible:=False;
end;

Viele Grüsse
Andreas

Furtbichler 11. Feb 2012 07:13

AW: Fastreport -Variable richtig erstellen und verwenden
 
Wieso so umständlich?
Delphi-Quellcode:
procedure Picture1OnBeforePrint(Sender: TfrxComponent);
begin
 Picture1.visible:= LogoOn;                                                  
end;
Wobei ich das mit den eckigen Klammern bei Dir nicht verstehe. Ist schon ne Weile her, das ich mit FR was gemacht habe, aber o.g. Code sollte funktionieren

Zu deiner Frage: Ich schätze, die Variablen sind 'Variants', da kannst Du alles reinstopfen.

Zitat:

Zitat von cugar (Beitrag 1150441)
frxReport1.Variables['LogoOn']:=AdvOfficeCheckBox2.Checked; ist falsch.

Was ist da falsch? Beschreibe mal.

cugar 11. Feb 2012 08:42

AW: Fastreport -Variable richtig erstellen und verwenden
 
Picture1.visible:= LogoOn; ist nur eine andere Art für das Gleiche was ich geschrieben habe, nur kürzer^^
Hast aber recht, kurz hält das Progr. immer schlank.

Die Klammern? Bin mir nicht sicher (hab FastRep. erst 2 Tage), dachte er braucht die Klammern um Variablen zu erkennen, gilt aber glaube ich nur im visuelen Modus (wenn ich im zb Memo.text was reinschreibe "Es ist der [Letzter_Vorfall] Vorfall in diesem Jahr")

Jedenfalls meldet FastReport: undefinierter Bezeichner: LogoOn, egal mit oder ohne Klammern

Event. sollte ich anderen Weg nehmen, von Delphi aus, abhängig von der LogoCheckBox, das Logo ein-/abschalten.
Es gab schon ein Beitrag glaube ich dazu, Komponente im Fastreport finden und Visible auf true/false setzen. Wäre aber auch Klasse zu wissen wie das mit den Scripten richtig gemacht wird, um später mit dem Report etwas mehr spass zu haben.


So funktioniert es erstmal:
if frxReport1.Pages[1].FindObject('Picture1') <> nil then begin
frxReport1.Pages[1].FindObject('Picture1').Visible := AdvOfficeCheckBox2.Checked;
end;

haentschman 11. Feb 2012 09:22

AW: Fastreport -Variable richtig erstellen und verwenden
 
Moin...

Variable aus Programm setzen (Beispiel):
Delphi-Quellcode:
frxGlobalVariables['Titel']:= aForm.FormName;
;

Variable benutzen (Beispiel):
1. Im Memo einfach [Titel]
2. im OnBeforePrint setzen
Delphi-Quellcode:
MemoX:= [Titel]
;
3. im OnBeliebig verarbeiten
Delphi-Quellcode:
if [Titel] = 'blub'
;

:hi:

Sir Rufo 11. Feb 2012 09:23

AW: Fastreport -Variable richtig erstellen und verwenden
 
Zitat:

Zitat von haentschman (Beitrag 1150452)
Moin...

Variable aus Programm setzen (Beispiel):
Delphi-Quellcode:
frxGlobalVariables['Titel']:= aForm.FormName;
Variable benutzen (Beispiel):
1. Im Memo einfach [Titel]

2. im OnBeforePrint setzen
Delphi-Quellcode:
MemoX:= [Titel]
3. im OnBeliebig verarbeiten
Delphi-Quellcode:
if [Titel] = 'blub'
:hi:

Das was du aber jetzt meinst, ist das Handling im Report-Script ;)

haentschman 11. Feb 2012 09:30

AW: Fastreport -Variable richtig erstellen und verwenden
 
ähm... ab Position 1 (benutzen)... ja. :oops: Sorry für die fehlenden Info´s... ich geh dann mal Kaffe kochen :stupid:

Sir Rufo 11. Feb 2012 09:44

AW: Fastreport -Variable richtig erstellen und verwenden
 
für mich mit Milch und Zucker bitte :)


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