====== Variablen ====== In Variablen können Sie Ergebnisse von Mappingregeln ablegen, um diese später wieder abzurufen. Variablen müssen mit einem vorangestellten $ gekennzeichnet werden. Bei einer Zuweisung sollte man die Variable mit zwei Dollarzeichen ($$) (z.B. [[transformation:mappings:funktionen:excel:loadtab|]]) angeben, dann wird der zu speichernde Wert nicht als Zeichenkette gespeichert. Ein Beispiel: ^Rulename ^Selection ^Target ^ | r_rule | substring(@Gtin,1,7)='99999' | $InvalidEan | Nach der Auswertung steht in der Variable $InvalidEan z.B. der Wert 'false' und ein weiterer Vertgleich muss dann auf 'true' oder 'false' prüfen, denn da $InvalidEan nicht leer ist, ist folgendes immer wahr. ^Rulename ^Selection ^Target ^ | rs_ruleset | $InvalidEan | | Wenn man stattdessen $$InvalidEan verendet, steht der boolsche Wert in der Variable. ^Rulename ^Selection ^Target ^ | r_rule | substring(@Gtin,1,7)='9999999' | $$InvalidEan | Weiter können so ganze Strukturn in Variablen gespeichert werden, z.B. Ergebnisse von GroupByEx, etc. ==== Hinweise ==== === Zurücksetzen === Das Löschen bzw. das Zurücksetzen muss über die Funktion [[transformation:mappings:funktionen:allgemein:clearvariable|]] erfolgen. Eine Zuweisung mit einer leeren Zeichenkette scheitert, da ein leerer Selektor zu einer Nichtausgewertung führt. D.h., die folgende Regel wird gar nicht erst ausgeführt: ^Rulename ^Selection ^Target ^ | r_rule | '' | $$InvalidEan | === Auslesen === Das Auslesen der Variable muss immer mit genau einem Dollarzeichen erfolgen oder noch besser über die Funktion [[transformation:mappings:variablen:xvar|XVar]], diese ist beim mehrfachen Auslesen z.B. in einer Schleife wesentlich schneller als der direkte Zugriff.