Menü

Textvorlagen mit $$-Platzhaltern

Zurück | Ebene zurück

Einige EULANDA-Erweiterungen erlauben es dem Anwender dynamischen Inhalt anzuzeigen. Hierzu wird ein fester Text über gewisse Platzhalter ergänzt.  Auf diesen dynamischen Inhalten basieren beispielsweise die Kurzinfos. In EULANDA kommen hierbei mehrere Techniken zum Einsatz. Die am häufigsten verwendete Methode sind die $$-Platzhalter.

normaler Text $$[objekt.]variablenname$$ weiterer normaler Text

Hierbei werden die Variablennamen mit doppelten Dollarzeichen eingegrenzt. Die Variablennamen werden vom jeweiligen Modul vorgegeben bzw. sind dort auch über andere Wege beeinflussbar. In den Kurzinfos werden die Variablen beispielsweise anhand einer SQL-Abfrage erzeugt.

In einigen Modulen werden neben den einfachen Variablen auch Objekte unterstützt. Beispielsweise könnte ein Artikelfeld in einem Kurzinfo wie folgt abgerufen werden:

Kurztext: $$ar.Kurztext1$$ 

Da ein doppeltes Dollarzeichen relativ selten vorkommt ist hierfür kein Escape-Zeichen vorgesehen. Es ist also nicht möglich ein doppeltes Dollar für sich alleine stehen zu lassen.

Einfache Formatierung

Das Textaustauschverfahren sieht zudem einige einfache Formatierungsoptionen und rudimentäre Ablaufsteuerung vor.

Kurztext: $$[code[optionen]:]ar.Kurztext1$$ 

Die Formatierungscode besteht aus einer kurzen Kette von Großbuchstaben oder Sonderzeichen. Je nach Art der Formatierung sind noch weitere Angaben möglich oder erforderlich. Diese Zusatzangaben folgen dem Code direkt, also ohne Trennzeichen. Die Formatierungsangabe wird durch einen Doppelpunkt vom Variablennamen getrennt.

Code Optionen Beschreibung Beispiel
L Länge Feste Länge vorgeben.

Die Variable wird auf eine feste Länge formatiert. Der Text wird ggf. abgeschnitten oder mit Leerzeichen aufgefüllt.

$$L20:Match$$ Der Matchcode wird auf 20 Zeichen beschnitten oder aufgefüllt
<   Linksbündige Formatierung. Diese Angabe ist nur sinnvoll im Zusammenhang mit einer Längenangabe. $$<:l40:vknetto$$ Die Preisangabe wird auf der rechten Seite mit Leerzeichen aufgefüllt ,bis der komplette Text 40 Zeichen lang ist
^   Mittige Formatierung. Diese Angabe ist nur sinnvoll im Zusammenhang mit einer Längenangabe. $$>:L40:VkNetto$$ Die Preisangabe wird auf der linken Seite und rechten Seite mit Leerzeichen aufgefüllt.
M   Zeichenfolge wird in Großbuchstaben und Umlaute in OE, AE etc. umgewandelt. Das ist der gleiche Algorithmus, wie beim Artikelmatchcode. $$M:ad.Name1$$ Das Feld Name1 wird z.B. von "Herr Müller" in "HERR MUELLER" umgewandelt
ML   wie M, jedoch wird der Text in Kleinbuchstaben gewandelt $$ML:ad.Name1$$ Das Feld Name1 wird z.B. von "Herr Müller" in "herr mueller" umgewandelt
E   Der Variablenname wird nicht ausgewertet, sondern zurückgegeben, wie angezeigt. Diese Option ist nur sinnvoll im Zusammenhang mit der Option X_IF_ $$E:X_IF_Rabatt:Rabatt$$ $$Rabatt$$

Falls ein Rabatt vorhanden ist, wird das Wort "Rabatt" vor dem eigentlichen Rabatt angezeigt angezeigt

R Zeichen Austauschen (Replace) bestimmter Zeichen gegen andere. einer Bestimmten Anzahl von Zeichen muss direkt darauf die gleiche Anzahl von Ersatzzeichen folgen $$Rabc***:Name1$$ Die Buchstaben a,b,c werden durch ein Sternchen ersetzt
FF Formatmaske Fließkommazahl formatieren $$FF0.00:VkBrutto$$ Der Verkaufspreis wird mit zwei Nachkommastellen formatiert
FD Formatmaske Datum formatieren $$FDmm.yy:Datum$$ Das Datum wird nur mit Monat und zweistelliger Jahresangabe angezeigt.
X_IF_ variablenname Eine einfache IF (Wenn) Prüfung. Als Option wird ein Variablenname angegeben. Die Variable wird als Text ausgewertet und wird als FALSCH ausgewertet, wenn sie leer ist oder gleich (u.A.) einem der folgenden Werte ist: FALSE, N, NO, FALSCH, 0, OFF, DISABLED.

Die eigentliche Variable wird ausgeblendet, wenn die Überprüfung FALSCH ergibt. Diese ist in Version 2.7 nicht in Kurzinfos verfügbar.

$$X_IF_VertreterId:ProvisionSatz$$ In diesem Fall wird der Provisionssatz nur angezeigt, wenn auch ein Vertreter hinterlegt wurde
URL   führt eine URL-Codierung durch. Sonderzeichen werden %xx getauscht. ab Version 2010  

Scripting mit Javascript

In den HTML-Templates der eCommerce-Anbindung sind außerdem noch einige Skript-Funktionen implementiert, die den Zugriff auf die Javascript-Engine von Windows erlauben. Diese Skripts werden nur während der Erzeugung der Seiten verwendet, ähnlich, wie ASP. Es erscheinen also keine Skripts im endgültigen HTML-Code.

Code Parameter Beschreibung Beispiel
IF(bedingung)   Bei dem Code muss es sich um einen Ausdruck handeln, der einen boolschen Wert (True oder False) zurückgibt. Wenn Dieser Ausdruck False ergibt, dann wird der nachfolgende Text bis zum nächsten $ENDIF() oder $ELSEIF() ausgeblendet. $$IF( s != "")$$

 

$$ELSEIF()$$

kein Bild

$$ENDIF()$$

 

ELSEIF() kein Parameter Falls die im letzten IF-Block angegebene Bedingung False ergibt, so wird der nachfolgende Block bis zum ENDIF() ausgegeben. Der ELSEIF() Befehl ist optional.
ENDIF() kein Parameter Ende des IF-Blocks. Jeder IF() Befehl muss mit einem ENDIF() abgeschlossen werden.
ADDCODE(code)   Der angegebene Javascript-Code wird der Script-Engine zugefügt. Hierdurch  können Beispiels-Variablen und Ähnliches initialisiert werden, die dann später in anderen Befehlen (IF oder WRITE) verwendet werden können. $$ADDCODE(var i; i=1)$$
WRITE(code)   Der angegebene Javascript.Befehl muss sich als Text auswerten lassen. Dieser Text wird dann an das Zieldokument  eingefügt.  

Beispiel

Um innerhalb des Javacodes auf die $$-Variablen zugreifen zu können, steh das Objekt "Vals" zur Verfügung. Dieses besitzt die Methode "Get", über die alle $$-Variablen abgerufen werden können. In nachfolgendem Beispiel wird das Bild IMG nur dann ausgegeben, wenn die Variable mit der Bild-URL nicht leer ist:

$$IF( Vals.Get("ar.IMG.URL") != "")$$

$$ENDIF()$$