Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

EVAL-Anweisungen (EVAL steht für Evaluierung) sind eine Möglichkeit, dem R-S dynamisch Befehle zur Berechnung und Einbindung von Objekten zu übergeben. Eine  Eine EVAL-Anweisung wird immer mit der Zeichenfolge ${ eingeleitet und mit der Zeichenfolge } abgeschlossen.

Es gibt 2 Hauptgründe, um EVAL-Anweisungen zu verwenden: 

1. Einbinden einer Ressource

 

Mit EVAL-Anweisungen können Sie Ressourcen ansprechen. Als Identifikator dient der Name der Ressource.

Info
titleSyntax

${Meine_Ressource}

...

wird, wenn der RichText verwendet wird, dynamisch die Datenstrom-Variable DS.CUST_NAME eingefügt und das Resultat ist z.B.:

"Sehr geehrter Herr Max Mustermann"

 


2. Funktionen und Bedingungen

 

Sie können innerhalb von EVAL-Anweisungen vorgefertigte Funktionen verwenden, die dann dynamisch einen Wert liefern. Eine Liste der vorhandenen Funktionen finden Sie hier.

Info
titleSyntax

${NameDerFunktion(Parameter1, Parameter2,...)}

 

${ IsNullI(0) } hat z.B. als Resultat 1.

EVAL-Anweisungen führen also die eingebettete(n) Funktion(en) aus und liefern den Ergebniswert zurück.

 

Scroll Pagebreak

1. Umgang mit Ressourcen in Texten

Wie oben beschrieben ist es möglich, mit EVAL-Anweisungen Ressourcen in Texte einzubinden. So ist es z.B. möglich, Variablen oder Regeln in andere Textressourcen einzubinden. Eine Ausnahme gilt für binäre Ressourcen. Da sie nicht zusammen mit anderem Text evaluiert werden können, ist es nur möglich, binäre Ressourcen in Variablen einzubinden, wenn ausser außer der einbindenden EVAL-Anweisung sonst kein Text in der Variable enthalten ist. Ansonsten interpretiert das R-S den kompletten Inhalt als Text. Außerdem ist es grundsätzlich nicht möglich, binäre Ressourcen in RichTexte einzubinden.


2. Operatoren

 

Das R-S unterstützt auch boolsche Operationen, die Sie z.B. in einer Regel anwenden können. Boolsche Operationen sind Vergleiche, die entweder wahr oder falsch sind. Folgende Operatoren sind im R-S definiert:

 

OperatorBedeutungBeschreibung
* ALWAYSTRUE

Ist immer wahr.

!= NOTEQUAL Ist wahr, wenn die Objekte nicht gleich sind.
<= EQUALLESS Ist wahr, wenn Objekt1 kleiner als Objekt2 ist oder die Objekte gleich sind.
>= EQUALGREATER Ist wahr, wenn Objekt1 größer als Objekt2 ist oder die Objekte gleich sind.
< LESS Ist wahr, wenn Objekt1 kleiner als Objekt2 ist.
> GREATER Ist wahr, wenn Objekt1 größer als Objekt2 ist.
[VAL1,VAL2,VALn] INLIST Ist wahr, wenn das zu vergleichende Objekt in der Liste vorhanden ist.
[VAL1,...,VAL2] INRANGE (3 Argumente, das mittlere Argument ist "...")Ist wahr, wenn das zu vergleichende Objekt zwischen VAL1 und VAL2 liegt
.

...

.
![VAL1, VAL2, VALn] NOTINLIST Ist wahr, wenn das zu vergleichende Objekt nicht in der Liste vorhanden ist.
![VAL1,...,VAL2] NOTINRANGE Ist wahr, wenn das zu vergleichende Objekt nicht zwischen VAL1 und VAL2 liegt.

Wird kein Operator angegeben, wird EQUAL (=) verwendet. Der Vergleich ist also dann wahr, wenn die Objekte gleich sind. Alle Operatoren wurden für alle Datentypen umgesetzt. Praktische Beispiele finden Sie in der Regeldefinition.

Scroll Pagebreak


Anker
Datentypen
Datentypen
3. Datentypen

 

Das R-S unterstützt verschiedene Datentypen:

DatentypBeschreibungWertebereichBeispiel
STRINGSpeichert eine ZeichenketteAlle Unicode-Zeichen"Hallo Welt!"
NUMBERSpeichert eine Ganzzahl

−2.147.483.648 bis +2.147.483.648 bzw.

0 bis 4.294.967.295

+706512, -59102
REAL

Speichert eine Gleitkommazahl

Trennzeichen ist '.'

(Achtung keine localisierten Schreibweisen erlaubt

und damit auch kein 1000-der Punkt)

3.4E-4932 1.1E+4932+5481.4390156, -98042.4168640
BOOLEANSpeichert einen Wahrheitswert (0/1)0/false/no und 1/true/yestrue, false, 1, 0, yes, no
DATETIMESpeichert ein Datum nach ISO 8601

Datum ohne Unterstützung von Wochen,

Wochentagen und Tagen im Jahr

2011-12-31, 2011-12-31T16:47Z

 

...

Scroll Pagebreak


Anker
ESCAPE
ESCAPE
4. Entities

Es werden alle HTML-Entities aufgelöst, die RW kennt. Zusätzliche ESCAPE-Zeichen sind:
 

ESCAPE-Sequenz Bedeutung
\"Doppeltes Anführungszeichen
\nZeilenvorschub (neue Zeile)

...


Da in RichTexten die interne Darstellung durch XML erfolgt, werden XML-Sonderzeichen im Text implizit umgewandeltimplizit umgewandelt, damit sie innerhalb des Codes gespeichert werden können. Sie können mit den folgenden Escape-Sequenzen aber auch eine explizite Umwandlung erzwingen: 

ESCAPE-Sequenz Stellt dar
\!
\=
\<<
\>>
\[
\]]

 

Registerkarte - Datenstrom-Variablen (Schema-Versionen) 4.2.7.6 Registerkarte: Datenstrom-Variablen | 4.3.1 Funktionen in EVAL-Anweisungen Image Removed

 

Warnung

EVAL-Anweisungen werden NICHT durch das Redaktions-System auf syntaktische und semantische Korrektheit geprüft! Fehlt zum Beispiel eine schließende Klammer oder ist eine Funktionsbezeichnung falsch geschrieben, so wird dies erst durch die Output Management Produkte geprüft, welche die Funktionen bei der Dokument-Generierung nutzen (Late Binding). So können diese Art von Fehlern erst bei der Ausführung der Preview-Funktion im Redaktions-System evaluiert werden.

Section
Column
width33%

 

Column
width33%
Panel
borderColor#FFAA00
bgColor#FFFEEF
borderWidth1px
borderStylesolid
Erweitern
titleVerwandte / Weiterführende Seiten...

Inhalt nach Stichwort
showLabelsfalse
max20
sorttitle
showSpacefalse
titleVerwandte Seiten
labels4 5 7 23 24

Column
width33%