Variablen sind die grundlegenden Ressourcen im R-S.
Es handelt sich dabei um einfache Platzhalter für benutzerdefinierte Werte.
Der Wert einer Variablen im R-S wird als STRING
eingegeben. Je nach Form des STRINGs
wird aber zwischen verschiedenen
Datentypen unterschieden. Enthält die Variable z.B. nur Ziffern, kann Sie als INTEGER
, NUMBER
, REAL
oder auch BOOLEAN
behandelt werden.
Eine Variable ist grundsätzlich immer eine Textvariable.
Speichern Sie allerdings in einer Variablen z.B. nur Ziffern, können Sie mit der Variable als Wert weiterarbeiten
und sie beispielsweise in Rechenoperationen verwenden.
Speichern Sie in einer Variablen nur eine 1 oder 0, können Sie die Variable als boolsche Variable verwenden.
Die verschiedenen Datentypen im R-S zeichnen sich durch ihre Form aus.
Sinnvolle Datentypen für Variablen sind z.B.:
Datentyp | Beschreibung | Wertebereich |
---|---|---|
| Zeichenfolge (Text). Der Inhalt einer Variable ist immer auch ein String. | Beliebe viele beliebige Zeichen |
| Ganzzahliger numerischer Wert mit positivem oder negativem Vorzeichen. Das Vorzeichen kann vor oder nach dem ganzzahligen numerischen Wert stehen. | -2147483648 bis +2147483648 |
| Numerischer Wert mit Nachkommastellen mit positivem oder negativem Vorzeichen. Das Vorzeichen kann vor oder nach dem ganzzahligen Wert stehen. | -3,4E-4932 bis +3,4E-4932 |
| Schaltvariable zum Speichern von 2 Werten: Wahr oder Falsch | true / false bzw. yes / no bzw. 1 / 0 |
| Datumsformat nach ISO 8601 | Datum der Form yyyy-mm-dd, z.B.: 2013-04-08 |
| Name einer R-S Ressource, z.B. einer anderen Variable | Name einer verfügbaren R-S Ressource |
| Name eines R-S Objekts, z.B. eines physikalischen Beileger | Name eines verfügbaren R-S Objekts |
Neben den Typen in der Tabelle existieren im R-S noch weitere Datentypen. Weitere Informationen darüber finden Sie hier.
Abbildung A: Beispielwerte einer Variablen
STRING
(Text) behandelt.
EVAL-Anweisungen und dynamische Einbindung innerhalb von Variablen
Neben der Möglichkeit, den Inhalt einer Variable statisch durch einen festen Wert zu definieren,
können Sie innerhalb von Variablen auch EVAL-Anweisung verwenden.
Mithilfe von EVAL-Anweisungen können Sie andere Ressourcen und dynamische Werte in eine Variable einbinden.
EVAL-Anweisungen spielen eine wichtige Rolle im R-S. Lesen Sie deshalb bitte den Abschnitt über EVAL-Anweisungen, bevor Sie beginnen,
damit und mit dynamischer Einbindung zu arbeiten.
Einbinden anderer Ressourcen
Abbildung B: Dynamische Einbindung in einer Variablen
In Abb. B wird gezeigt, dass in Variablen auch die dynamische Einbindung anderer Ressourcen erlaubt ist.
Die Variable MyVariable
Abb. B (2) enthält durch dynamische Einbindung einen Verweis auf die binäre Ressource pf_logo
Abb. B (1).
Die Erweiterung Logo
verwendet dann die Variable und bindet sie an den Erweiterungs-Punkt FUSS_FIRST
Abb. B (4).
(Erweiterungen ermöglichen das Einbetten von Ressourcen in das Dokument mithilfe von durch das Formular
festgelegten Erweiterungs-Punkten, mehr Informationen dazu finden Sie hier).
Im Dokument sehen Sie dann den Inhalt von MyVariable,
also pf_logo,
am Erweiterungs-Punkt FUSS_FIRST
Abb. B (5).
Die Variable MyVariable
enthält nicht die Ressource pf_logo
, sondern einen Verweis auf die Ressource: ${pf_logo}.
Bei Aufruf der Variablen wird dann der Verweis zurückgegeben.
Beachten Sie bitte, dass in einer Variable vor einer EVAL-Anweisung, die eine binäre Ressource dynamisch einbindet,
kein Text (auch keine Leerzeichen oder Zeilenumbrüche) stehen darf. Text nach der Anweisung wird ignoriert.
Dies gilt jedoch nicht für die dynamische Einbindung von z.B. anderen Variablen oder anderen EVAL-Anweisungen.
Diese können mit Text kombiniert werden.
Dynamische Werte
Neben der dynamischen Einbindung von Ressourcen können Sie in einer Variable (und auch in anderen Ressourcen)
mithilfe von EVAL-Anweisungen auch Werte dynamisch berechnen. Der Wert wird dann erst berechnet, wenn die Variable
verwendet wird.
Abbildung C: Wert von VariableB wird dynamisch generiert
Der Wert von VariableB
hängt also von VariableA
ab. In diesem Beispiel wird VariableB
immer den Wert 1 annehmen, da VariableA
den
statischen Wert 0 hat. Würde VariableB
allerdings in der EVAL-Anweisung z.B. eine Regel oder eine Datenstrom-Variable verwenden,
so wäre auch der Wert von VariableB
volatil, da der Eingangswert aus der Regel oder der Datenstrom-Variablen sich von Dokument zu Dokument ändern kann.
Sie benutzen hier übrigens auch wieder dynamische Einbindung, indem Sie die Variable VariableA
einbinden. Sie betten diese Ressource dann allerdings
in eine EVAL-Anweisung ein, um einen Wert dynamisch (abhängig von VariableA
) berechnen zu lassen bzw. eine Operation mit dieser Ressource durchzuführen.
Grundsätzlich können Sie dynamische Einbindungen und EVAL-Funktionen unbegrenzt tief verschachteln.
Achten Sie aber darauf, dass die Ressource, die Sie verwenden, den erwarteten Datentyp hat.
Um mit den binären Ressourcen fortzufahren, klicken Sie bitte hier.