Datenstrom-Variablen bilden eine Schnittstelle zwischen ERP-/CRM-/HOST-Systemen, also den datenverarbeitenden Systemen, die kundenspezifische Informationen enthalten und diese in Form eines Datenstroms für jedes Formular ausgeben, und dem R-S. Dieser Datenstrom, der zu jedem Formular die benötigten Kundeninformationen enthält, kann durch Datenstrom-Variablen abgefangen und genutzt werden. Eine Datenstrom-Variable ist also eine Ressource, die ein Datenfeld eines an den Produktionsprozess angeschlossenen Datensystems repräsentiert und dieses Datenfeld in das R-S migriert. Im R-S kann die Datenstrom-Variable dann als Ressource benutzt werden. Der Wert der Datenstrom-Variable wird erst bei der endgültigen, externen Dokumentengenerierung eingesetzt (z.B. durch den ReportWriter). Der Wert der Datenstrom-Variable steht also im R-S noch nicht fest. Das Symbol für Datenstrom-Variablen im R-S ist .


Deklaration

Datenstrom-Variablen haben immer die Form:

DS.NAME_DER_VARIABLE

Nur Datenstrom-Variablen dürfen im R-S mit DS. beginnen.


Datenstrom-Variablen können im R-S weder erstellt noch bearbeitet, gelöscht, kopiert, importiert, exportiert oder umbenannt werden, da Sie externe Ressourcen repräsentieren.


Inhalt und Werte von Datenstrom-Variablen

Nicht alle Datenfelder, die im zugrunde liegenden ERP-/CRM-/HOST-System existieren, müssen auch im R-S als Datenstrom-Variablen verfügbar sein. Welche Datenstrom-Variablen im R-S verfügbar sind, wird durch den Formular-Designer bestimmt und ist im Import-Paket ( Transaktions-Formular ) festgelegt. Dort können Sie in der Registerkarte Datenstrom-Variablen einsehen (gibt es auch bei Schema-Versionen), welche Datenstrom-Variablen ein Formular bereitstellt. Datenstrom-Variablen müssen auch nicht zwingend denselben Namen haben wie das Datenfeld im Datensystem, das Sie repräsentieren. Zur Vereinfachung kann der Formular-Designer die Namen der Datenstrom-Variablen selbst festlegen. Welchen Wert eine Datenstrom-Variable annehmen wird, ist zum Zeitpunkt der Bearbeitung im R-S unbekannt, da dies ja für jedes Formular individuell ist (Jeder Kunde hat einen anderen Namen, eine andere Kundennummer, einen anderen Rechnungsbetrag, nicht jeder kommt aus Deutschland, usw.). Um im R-S mit Datenstrom-Variablen arbeiten zu können, muss jedoch bekannt sein, welchen Inhalt eine Datenstrom-Variable repräsentiert. Dazu enthält optimalerweise jede Datenstrom-Variable eine Beschreibung und eine Angabe möglicher Werte, um dem R-S Nutzer mitzuteilen, welche Werte eine Datenstrom-Variable enthalten kann (oder welche Werte, die eine Datenstrom-Variable annehmen kann, relevant sind). Diese Angaben werden durch den Formular-Designer gemacht und sind in der Registerkarte Datenstrom-Variablen einzusehen:


Die angegebenen Werte müssen nicht zwingend alle möglichen Werte repräsentieren. Es werden nur die Werte gezeigt, die der Formular-Designer angegeben hat.


Datenstrom-Variablen enthalten immer einen STRING (Text). Wie normale Variablen können aber auch Datenstrom-Variablen alle Datentypen enthalten, die das R-S kennt. Mehr über Datentypen finden Sie hier . Wenn Sie also z.B. in Regeln Bedingungen definieren, die von einer Datenstrom-Variable abhängen, müssen Sie sicher sein, dass die Datenstrom-Variable auch den Datentyp enthält, den Sie voraussetzen. Geben Sie bspw. in einer Regel der Spalte als Bedingung eine Datenstrom-Variable:

DS.ORDER_DATE

und als Datentyp der Spalte DATE an, müssen Sie sicherstellen, dass der Inhalt von  DS.ORDER_DATE auch in jedem Fall mit dem R-S Datentyp DATE konform ist, da die Bedingung sonst nicht ordnungsgemäß ausgeführt werden kann.


Nutzung von Datenstrom-Variablen

Datenstrom-Variable können wie jede andere R-S Ressource verwendet werden: Sie können entweder direkt per Erweiterung in einen Layout-Bereich des Formular eingefügt werden (Erweiterungen lernen Sie später kennen) oder in einer anderen Ressource mit Hilfe dynamischer Einbindung. Dynamische Einbindung mit Hilfe einer EVAL-Anweisung haben Sie bereits in den vorherigen Ressource-Beschreibungen kennengelernt: Sie können in einer Ressource eine andere Ressource einfügen (auf sie verweisen), indem Sie folgenden Term benutzen: ${Name_der_Ressource} . Die Verwendung in anderen Ressourcen ist für Datenstrom-Variablen in der Regel sinnvoller, da Datenstrom-Variablen einfache Werte enthalten, die normalerweise nicht unformatiert in ein Dokument eingefügt werden sollen. Oft dienen Datenstrom-Variablen auch als Entscheidungs-Variablen. Die häufigsten Verwendungsarten von Datenstrom-Variablen sind:



1. In Variablen oder RichTexten

Datenstrom-Variablen werden genutzt, um Texte im Dokument zu personalisieren und kundenspezifische Werte in den Text einzufügen. Sie dienen dann im Text als "Platzhalter" für ihren Wert. Für formatierte und größere Texte sollten RichTexte benutzt werden. Im RichText können Sie den Wert der Datenstrom-Variablen mitformatieren, indem Sie die Formatierung einfach auf die gesamte EVAL-Anweisung anwenden (bei Variablen ebenfalls mit Hilfe von INLINE-Sequenzen möglich). Fügen Sie die Datenstrom-Variablen einfach per ${Name_der_Datenstromvariable} ein:

Der RichText:


und seine Anzeige im Dokument (mit Beispielwerten):


2. In Regeln

In Regeln werden hauptsächlich Datenstrom-Variablen für Spaltenbedingungen benutzt, um ein von der Datenstrom-Variable abhängiges Verhalten zu implementieren. Dazu müssen die relevanten Werte der Datenstrom-Variable bekannt sein. Da Datenstrom-Variablen alle verfügbaren formular-spezifischen Informationen enthalten sind sie die Möglichkeit, Formulare im R-S zu personalisieren. Wird als Spaltenbedingung einer Regel eine Datenstrom-Variable angegeben, hängt der Rückgabewert der Regel von dem Wert der Datenstrom-Variable ab. So lassen sich bedingte Ausführungen zur Laufzeit implementieren. In Regeln verwenden Sie Datenstrom-Variablen wie üblich per EVAL-Anweisung. So lassen sich eine Fülle verschiedener Anforderungen implementieren, z.B.:

  • Steuerung von Ressourcen:

Die Regel gibt auf Basis einer Datenstrom-Variable die richtige Ressource zurück, z.B. einen RichText oder eine Binäre Ressource. Beispiele: Ein Text, der in mehreren Sprachen mehrfach in verschiedenen RichTexten vorliegt. Abhängig von einer Datenstrom-Variable, die die Nationalität des Kunden angibt, wird die richtige Ressource ausgewählt und zurückgegeben.

Oder: Sie haben mehrere Werbeanzeigen in binären Ressourcen und möchten die passendste für den Kunden aussuchen. Dazu implementieren Sie eine Regel, die auf Basis verschiedener Datenstrom-Variablen (z.B. Alter, Rechnungshöhe, Wohnort, etc.) die passendste Ressource aussucht.

  • Steuerung von Beilegern:

Sie haben logische / physikalische Beileger und möchten den passendsten an das Formular anhängen. Dazu implementieren Sie eine Regel, die auf Basis von Datenstrom-Variablen den richtigen logischen Beileger zurückgibt. Oder: Die Regel (oder auch die Bedingung, siehe hier) entscheidet, ob überhaupt ein Beileger angefügt werden soll. Soll kein Beileger angehängt werden, gibt die Regel nichts zurück und die Erweiterung, die die Regel verwendet, hat keinen Beileger zum Anhängen.

  • Logische Berechnungen, Funktionen:

Mit Hilfe von boolschen Operatoren, EVAL-Anweisungen und Funktionen können Sie Berechnungen, Vergleiche und bedingte Ausdrücke definieren. So lassen sich die Informationen aus dem Datensystem vielfältig für Bedingungen nutzen.


Es gibt unzählige Anforderungen, die sich durch Datenstrom-Variablen in Regeln verwirklichen lassen. In der Regel-Definition finden Sie weitere Beispiele und lernen, wie man mit Regeln ordnungsgemäß arbeitet. Bevor Sie mit Regeln arbeiten, sollten Sie unbedingt diesen Abschnitt lesen. Außerdem hilfreich sind die Artikel über die Umgebung des R-S sowie der Abschnitt über EVAL-Anweisungen, Operatoren und Datentypen.