+1 800 256 3608 (toll-free in North America) or +49 7531 90 60 10| service@combit.com

Performance - Druck - Variablen

components

(Peter Nomden) #1

Hallo Leute,

mir ist aufgefallen, dass Variablen mehrfach übergeben/angefordert werden. Wenn ich raten soll, wird pro Seite einmal “OnDefinedVariables” von der VCL-Komponente (Delphi) aufgerufen. Nun habe ich allerdings Variablen die eindeutig sind (bei mir alle Variablen). Der Holen der Variablen scheint mir verschenkte Zeit zu sein. Es würde reichen, wenn die Daten einmalig übergeben werden. Zum einen kostet das “Umschalten” zwischen der Delphi-Anwendung und dem Druckmodul (DLL) sicherlich Zeit und Ressourcen. Zum Anderen kostet das Holen der Werte um sie an die DLL zu übergeben (egal ob errechnete Werte oder Zugriff auf Datenbank) Zeit. Ähnlich läuft es mit benutzerdefinierten Variablen. Als Beispiel nehme ich mal die Ermittlung des Alters. Ich habe hier eine benutzerdefinierte Variable “Alter” angelegt. Die benutzerdefinierte Variable ruft hier eine eigens registrierte Funktion “GetAlter(Geburtstag [Datum])” auf. Nun wird das Alter an 5-6 Stellen angedruckt und für jede Anzeige wird erneut meine Funktion zur Ermittlung des Alters “GetAlter” aufgerufen.
Meine Frage ist nun: Gibt es einen Weg das zu verhindern? Kann man benutzerdefinierte so definieren, dass deren “Wert” nur einmalig ermittelt wird? Oder ist gar die Vorgehensweise falsch, so dass “benutzerdefinierte Variablen” für so etwas gar nicht gedacht sind?

Vielen Dank schonmal für die Zeit!

MfG Peter Nomden


(combit Support - Patrick Preuschoff) #2

Legitimerweise können sich Variablen 1x pro Seite ändern. Wenn Sie wissen, dass der gleiche Wert behalten werden kann, so würden Sie die Variable nur einmalig anmelden, da wir Inhalte nicht wieder löschen und diese so auf allen Folgeseiten ausgegeben werden können und Sie das gewünschte Verhalten erreichen.