LL27.1 printerless = true und die Variablen sind weg

Guten Morgen,

in der Vergangenheit habe ich mit diesen Settings einen Ausdruck/Export in A2, A1 etc. designen, drucken und exportieren können.

this._report.Core.LlSetOption(LL_OPTION_PRN_FORCE_PROJECTSIZE_AS_PAPERSIZE, 1);
this._report.Core.LlSetOption(LL_OPTION_SUPPORT_USERDEFINED_REPORTPAGELAYOUT, 1);

Mit

this._report.Printerless = true;

sind auf einmal alle Variablen weg.

Was ist der Unterschied zwischen diesen beiden Vorgehen?

MfG

Nikolaus Kern

Hallo Herr Kern,

der Unterschied ist, dass List & Label im Printerless-Modus ein “Virtuelles Gerät” anmeldet und somit die Abhängigkeit zum Druckertreiber nicht mehr gegeben ist. Das kann vor allem beim reinen Datei-Export (z.B. ins PDF-Format) von Vorteil sein. Zusätzlich lässt nun direkt im Designer ein benutzerdefiniertes Seitenformat definieren. Das musste vorher immer erst im Druckertreiber definiert werden. Auch musste sichergestellt sein, dass auf dem ausführenden System der Druckertreiber ebenfalls über ein solches Format verfügte. Das ist damit nicht mehr notwendig. Anbei ein Screenshot. Nichtsdestotrotz werden viele genormte Formate wie A2, A3, A4, … angemeldet und zur Verfügung gestellt.

Könnten Sie das bitte einmal genauer beschreiben? Geht es hier um die LL.Device-Variablen?

Hallo,

es geht um die Variablen, die vom aufrufenden Programm (.net) an LL übergeben werden.

this._report.Variables.Add(“Key”, “Irgendein Wert”)

grafik

Im Screenshot ist der Soll-Zustand zu sehen, bei printerless = true ist das leer.

Das kommt auf die Reihenfolge an.
Man muss erst Printerless= true setzen und dann die Variablen definieren. Anders rum verschwinden die Variablen.

LG,
Marco

1 Like

Das ist richtig - für die Änderung des Wertes von Printerless muss im Hintergrund der Job komplett geschlossen werden. Dabei gehen z.B. Variablen und Felder verloren. Die Eigenschaft sollte daher so früh wie möglich gesetzt werden. Das ist so auch dokumentiert.