29.11.2012 Aufrufe

combit List & Label - Programmierer-Referenz - combit GmbH

combit List & Label - Programmierer-Referenz - combit GmbH

combit List & Label - Programmierer-Referenz - combit GmbH

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Druckvorgang<br />

Diese können erst verwendet werden, wenn der Druck gestartet wurde, also nach<br />

LlPrintStart() oder LlPrintWithBoxStart(), denn es sind genau diese Funktionen, die das<br />

Projekt einlesen und die Verwendung der Variablen überprüfen! In diesem Fall dürfen<br />

Sie in der Schleife den Variablenpuffer nicht über LlDefineVariableStart() löschen!<br />

Bei der Definition von Variablen während des Drucks fragt man folglich <strong>List</strong> & <strong>Label</strong>, ob<br />

diese Variable gebraucht wird:<br />

if (LlPrintIsVariableUsed()==1) then<br />

<br />

Genauso bei Feldern:<br />

if (LlPrintIsFieldUsed()==1) then<br />

<br />

c) Sonderzeichen in Variablen- oder Feldnamen<br />

Verwenden Sie keine Sonderzeichen in Variablennamen. Dann können Sie den Check<br />

über LlSetOption(HLLJOB, LL_OPTION_XLATVARNAMES, 0) ausschalten und so unnötige<br />

und häufige Berechnungen unterdrücken.<br />

d) Parameterüberprüfung<br />

Wenn Ihre Applikation fertig gestellt und getestet ist, können Sie die Parameterüberprüfung<br />

von <strong>List</strong> & <strong>Label</strong> über den Befehl LlSetOption(HLLJOB, LL_OPTION_-<br />

NOPARAMETERCHECK, 1) ausschalten. Auch hierdurch sparen Sie wertvolle Zeit, indem<br />

Sie hoffentlich überflüssige Checks vermeiden.<br />

e) RTF-Control<br />

Verwenden Sie es sparsam, wenn es nicht unbedingt nötig ist, am besten gar nicht.<br />

Dieses Control hat naturgemäß recht viel Arbeit mit der Formatierung und schluckt viel<br />

Zeit, der Ausdruck dauert so wesentlich länger als ohne RTF-Ausgabe.<br />

Weitere Optimierungsmöglichkeiten<br />

Einige der von <strong>List</strong> & <strong>Label</strong> verwendeten Systembibliotheken (z.B. riched20.dll) scheinen<br />

unter bestimmten Umständen Ressourcenverluste zu verursachen. Diese sind sehr<br />

klein, fallen aber bei jedem Laden und Entladen der DLL an.<br />

Diese DLLs werden von <strong>List</strong> & <strong>Label</strong> bei jedem Öffnen bzw. Schließen des "ersten" Jobs<br />

ge- bzw. entladen. Insofern sollten Sie in Ihrer Applikation ein häufiges LlJobOpen() /<br />

LlJobClose() vermeiden oder aber zu Beginn einen Dummy-Job öffnen und diesen bis<br />

zum Ende geöffnet halten. Damit wird das ständige Laden und Entladen der DLLs umgangen,<br />

und neben einer dadurch erreichten Geschwindigkeitsoptimierung werden auch<br />

die Ressourcenverluste nicht mehr auftreten.<br />

Wichtige Hinweise für <strong>List</strong>enprojekte<br />

Variablen sind bei <strong>List</strong>enprojekten Werte, die für eine Seite gleich bleiben und Felder<br />

übernehmen die datensatzabhängigen Daten. Diese druckt man dann mit LlPrintFields().<br />

43

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!