Zuweisung
Die Zuweisung eines Wertes zu einer Variablen erfolgt in der Form @Variablenname = Wert. Der Wert kann auch einen komplexeren Makroausdruck darstellen, der den entsprechenden Wert als Rückgabe liefert.
Zuweisungen kommen hauptsächlich im "Process"-Schritt bei der Abarbeitung der Makros zum Einsatz, die unter ProcessMacro[].Macro[] frei definierbar sind. Hier wird bei der Ausführung von Feldmakros angegeben, welchem Feld der Ergebniswert zugewiesen wird.
Hinweis
Diese Syntax wird nicht bei Konfigurationseigenschaften verwendet, die einen Feldmakroausdruck als Parameter erwarten (z. B. .ConditionMacro). Auch bei der Initialisierung von Feldern des Feldkataloges über die Eigenschaft FieldCatalog[].Field[].InitMacro wird diese Syntax nicht verwendet. In diesen Fällen ist das Zielfeld für das Ausführungsergebnis aus dem Kontext heraus schon bekannt und muss daher nicht angegeben werden.
Der Ausführungskontext ist dem Makroparser allerdings nicht bekannt. Ein Ausdruck in der Syntax einer Zuweisung kann somit fehlinterpretiert werden, da die Syntax identisch ist mit der Syntax für den Vergleich eines Variablenwertes mit einem anderen Wert. Um diese Mehrdeutigkeit aufzulösen, sollte bei einem Wertevergleich das doppelte Gleichheitszeichen (==) genutzt werden.
Eine Zuweisung kann auch an eine Variable erfolgen, die namentlich unbekannt ist und für die kein Feld im Feldkatalog definiert ist. In diesem Fall wird implizit eine temporäre Variable dieses Namens angelegt. Der Wert dieser temporären Variable kann allerdings nicht persistiert werden, sodass die Variable nur für den aktuellen Ausführungsblock gültig ist. Auf diese Weise können Variablen definiert werden, die beispielsweise nur temporäre Werte zwischenspeichern, ohne dass dafür ein dediziertes Hilfsfeld im Feldkatalog angelegt werden muss. Temporärvariablen müssen bezüglich der Namenssyntax Kopfdatenfeldern entsprechen. Die komplexere Syntax eines Tabellenfeldes ist für Temporärvariablen nicht nutzbar.