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

LL25: Problem bei Verwendung von Benutzervariablen, die u.U. nicht definiert sind -> anderes Verhalten in LL25 als in LL24

Ich wollte von LL24 auf LL25 umstellen und bin dabei über ein Problem gestolpert. Ich habe etliche Dinge in Bausteine ausgelagert, u.a. auch Benutzervariablen. Um bei der Verwendung dieser in Bausteinen definierten Benutzervariablen keine Fehler zu erhalten, wenn eine dieser Benutzervariablen verwendet wird, es aber nicht sicher ist, ob sie tatsächlich existiert, frage ich über Exists(…) nach, ob es sie gibt, und falls nicht, setze ich einen Default-Wert.

Beispiel: In einem Baustein ist @SeitenrandLinks definiert mit dem Wert 15. In einem anderen Bericht möchte ich damit z.B. die Position links setzen:

if(Exists(’@SeitenrandLinks’), Evaluate(’@SeitenrandLinks’), 10)

Ist der entsprechende Baustein nicht eingebunden, ist Position Links 10, ist er eingebunden, ist Position Links 15.

Unter LL24 funktioniert das, egal ob der Baustein zum Bericht hinzugefügt wurde oder nicht. Unter LL25 erhalte ich einen Formelfehler, wenn der Baustein nicht eingebunden ist und die Benutzervariable nicht definiert ist.

Stelle ich die Formel um und schreibe stattdessen

if(not Exists(’@SeitenrandLinks’), 10, Evaluate(’@SeitenrandLinks’)

erhalte ich keinen Formelfehler.

Ist das Absicht und falls ja, warum und - noch wichtiger - kann ich das Verhalten irgendwie abstellen, sodass ich wieder das gleiche Verhalten wie in LL24 habe?

Dank Ihrer Beschreibung waren wir in der Lage das Verhalten zu reproduzieren und untersuchen es nun genauer. Sobald Neuigkeiten vorliegen, werden wir Sie selbstverständlich informieren. Bitte haben Sie jedoch noch etwas Geduld.

Könnten Sie einmal überprüfen, ob das Verhalten weiterhin auftritt, nachdem das aktuelle Service Pack 25.002 installiert wurde?

Hier können Sie das Service Pack herunterladen.

Das Problem tritt mit installiertem Service Pack 25.002 auf. Ob es auch ohne Service Pack auftritt, kann ich nicht sagen, weil es bereits installiert war, als ich umstellen wollte.

Das ist wirklich spannend. Mit dem aktuellen Service Pack konnte ich das Verhalten bei mir nicht nachvollziehen. Wäre es möglich, dass Sie uns die beteiligten LL-Projekte hier im Anhang hochladen könnten?

Grundsätzlich gerne, aber sie werden bei Ihnen nicht funktionieren ohne Datenübergabe. Ich werde versuchen, die bestehenden Formulare so zu reduzieren, dass sie lauffähig sind bis auf die entscheidende Stelle. Ich melde mich dann wieder.

Bitte nicht wundern: Da keine Zips hochgeladen werden können, antworte ich 3x mit unterschiedlichen Anhängen.

Variante 1: Der Bericht KfzVerkaufsschein.lst nutzt als Baustein BausteinDINA4ListeQuerKopf.lst. KfzVerkaufsschein.lst wurde heute mit LL25 geändert, damit er auch ohne Datenübergabe geöffnet werden kann, der Baustein wurde zuletzt mit LL24 bearbeitet. Unter LL24 erhalte ich keine Fehler, unter LL25 erhalte ich Fehler bei den Positionsangaben der diversen Objekte, weil die Benutzervariablen nicht definiert sind.

BausteinDINA4ListeQuerKopf.lst (18.0 KB) KFZVerkaufsschein.lst (16.6 KB)

Variante 2: Die gleichen Dateien, mit dem einzigen Unterschied, dass der Baustein auch mit LL25 gespeichert wurde.

BausteinDINA4ListeQuerKopf.lst (18.0 KB) KFZVerkaufsschein.lst (16.6 KB)

Variante 3: Der Baustein BausteinDINA4ListeQuerKopf.lst verwendet den Baustein BausteinDINA4Seitenraender.lst, in dem die fehlenden Benutzervariablen definiert sind. Das ist die einzige Variante, die funktioniert, wenn ich an den problematischen Stellen aus if(Exists(…), Evaluate(…), …) nicht if(not Exists(…), …, Evaluate(…)) mache.

BausteinDINA4ListeQuerKopf.lst (17.6 KB) BausteinDINA4Seitenraender.lst (10.8 KB) KFZVerkaufsschein.lst (16.6 KB)

Danke für Ihre Mühe! Wir schauen uns die einzelnen Berichte derzeit an und melden uns wieder, sobald neue Informationen vorliegen.

Heute habe ich das Service Pack 3 installiert, in der Hoffnung, dass das Problem damit behoben ist. Es wurde zwar nicht explizt erwähnt, aber es hätte ja trotzdem sein können. Leider besteht der Fehler immer noch. Gibt es dazu Ihrerseits schon neuere Infos?

Besten Dank für Ihr Nachhaken. Gerne kann ich Ihnen über unser Support-Portal Testmodule bereitstellen. Könnten Sie diesbezüglich einen Support-Case erstellen?

Vielen Dank für die schnelle Rückmeldung. Der Support Case ist erstellt.

Das Problem wurde vom Support gelöst.

1 Like

© combit GmbH