In Textfeld integrierte Bedingung wird im Druck nicht mit ausgegeben

Hallo zusammen,

bin blutiger Anfänger im LL-Designer und bräuchte etwas Hilfe. Ich versuche für einen Etikettendruck ein Textfeld etwas dynamisch zu gestalten.

Wenn der Eintrag mit “-” (Minus Zeichen) folgend von einer Zahl beginnt, dann soll der Text "Tiefgekühlt aufbewahren bei max. ", falls kein - vorhanden, dann “Gekühlt aufbewahren bei max. " ausgegeben werden. Am Ende des Strings soll zusätzlich der Text " °C.” ausgegeben werden.

Habe das mal wie folgt versucht. Im Designer wird sie mir als korrekt angezeigt. Aber beim Ausdruck, bzw. bei der Vorschau bereits, habe ich keine Ausgabe.

IF(left$(label.storage.ExpiryPeriod1, 1) =“-”, "Tiefgekühlt aufbewahren bei max. " + label.storage.ExpiryPeriod1 + “°C.”, "Gekühlt aufbewahren bei max. " + label.storage.ExpiryPeriod1 + “°C.”)

Vielleicht kann mir jemand den entscheidenden Ratschlag geben?

Herzlichen Dank im Voraus

Hallo!

Könnte es evtl. sein, dass die Variable Null ist?
Dafür bräuchte es ein Spezialhandling.

Grüße

HP

Hallo HP,

Da das Datenfeld “label.storage.ExpiryPeriod1” vom Datentyp her ein String ist, müsste hierkeine Überprüfung für “NULL” sein. korrekt?

LG Reto

Hi Reto,
IsNullOrEmpty() wäre hier die passende Funktion. Auch ein String Datenfeld kann ja mal NULL sein :wink:

Hallo Retor, schau mal hier:

https://docu.combit.net/designer/de/index.html#!Documents/arbeitenmitnullwerten.htm

Grüße

HP

Hallo HP & Erdal

ich bekomm’s einfach nicht hin. Werde mich anderswie organisieren. Danke euch beiden recht herzlich für die Hilfe.

LG Reto

Mein letzter Stand hier, spuckt nichts aus…

IF(IsNullOrEmpty(Label.storage.expiryPeriod1), “”, IF(Left$(NullSafe(Label.storage.expiryperiod1),1) = “-”, “Tiefgekühlt aufbewahren bei max. - " + Label.storage.expiryPeriod1 + " °C.”, “Gekühlt aufbewahren bei max. " + Label.storage.expiryPeriod1) + " °C.”)

Also das NullSafe hinten brauchst du eigentlich nicht, das erste IsNullOrEmpty fängt das ja schon ab, wenn es Null ist kommst du da ja sowieso nicht rein, und wenn nicht Null dann passt es ja.
Ich bin der Meinung das in dem String etwas anderes drin steht, gib dir den String mal aus, was genau steht drin, ich würde auch mal das Tool debwin4.exe aus dem “Verschiedenes Ordner” im Install. Verzeichnis von LL dazu ziehen, einfach starten und im Log später mal nach LlDefineFieldEx(…, Label.storage.expiryPeriod1, …) suchen, dort siehst du genau was angemeldet wird.

Also debwin4 starten, capture …Log klicken (siehe Bild), dann deinen Druck mal ausführen, im Log kannst das wie o. geschrieben suchen :wink:

Hallo zusammen,

Wollte mich noch recht herzlich bei eurer Hilfe bedanken. Hatte Tomaten auf den Augen - die Lösung war schlussendlich sehr nah… falsche Variable erwischt :see_no_evil: Funktioniert einwandfrei.

LG Reto

2 Likes