Benutzerhandbuch > Objekte > Arbeiten mit Objekten > Verwendung

Verwendung von vordefinierten Variablen

Im Hinblick auf die Verwendung und Ersetzung der Variablen sind einige Besonderheiten zu beachten.

Script

Die Ersetzung der Variablen, die im Script verwendet werden, erfolgt vor der Script-Prozessierung.

Vordefinierte Variablen verhalten sich ähnlich wie Script-Variablen. Der Wert kann an jeder Stelle ausgelesen und verwendet werden. Vordefinierte Variablen werden jedoch nicht erstellt und besitzen einen vorgegebenen Namen. Die Änderung im Script ist daher nicht zulässig und führt zu einem Fehler:

:SET&$CLIENT# = 17

Im Script wird die Verwendung von Variablen für Werte von Variablen-Objekten im Gegensatz zu Attributen nicht unterstützt. Daher sind diese auch im Dialog Variablen-Auswahl nicht verfügbar. Um auf Variablen-Objekte mittels Script zuzugreifen, verwenden Sie das Sprachmittel GET_VAR.

Wird mit dem Script-Sprachmittel :PUT_ATT eine vordefinierte Variable in ein Attribut geschrieben, wird diese unverändert eingetragen und erst nach der Script-Prozessierung ersetzt. Bei Änderung von Attributen durch das Script, die selbst eine im Objekt verwendete vordefinierte Variable darstellen, wird der neue Wert bei der Ersetzung verwendet. Im Script ist der neue Wert der Variable ab der ändernden Scriptzeile gültig.

Beispiel:
Job mit folgenden Attributen:
Kostenstelle: Acc1
Archivbegriff 1: &$INT_ACCOUNT#
Mit dieser Scriptzeile wird die vordefinierte Variable für den Agentennamen in das Attribut "Kostenstelle" geschrieben:
:PUT_ATT INT_ACCOUNT = &$HOST#
Erst nach Script-Prozessierung werden die Variablen ersetzt. Kostenstelle und Archivbegriff1 erhalten als Wert den Namen des Agenten.

Variablen für Attribute, die im Script verwendet werden, besitzen an der Stelle, an der sie selbst vordefinierte Variablen enthalten, keinen Wert.

Wird mit GET_ATT ein Attribut ausgelesen, das vordefinierte Variablen enthält, wird der Wert ohne Ersetzungen zurückgeliefert!

Variablen innerhalb von JCL oder Script-Literalen werden nicht ersetzt. 

Die Autovervollständigung des Script-Editors listet bereits verwendetete Variablen auf.

Beachten Sie, dass numerische von vordefinierten Variablen automatisch 16-stellig formatiert werden, wenn diese in Klammern ( ) beim Sprachmittel:SET angegeben wurden. 

Beispiel: Das ursprünglich 4-stellige Format des Mandanten geht somit verloren. Die Script-Variable &CLNTNR# erhält z.B.: den Wert "0000000000008100"

:SET &CLNTNR# = (&$CLIENT#)

Attribute

Die Ersetzung der vordefinierten Variablen in Attributen durch den Wert, erfolgt nach der Script-Prozessierung. Ist der Variablenname ungültig, so bleibt dieser bestehen. Achten Sie daher auf die richtige Schreibweise und den Objekttyp oder verwenden Sie den Dialog Variablen-Auswahl um die Variablen einzufügen.

Es erfolgt keine Ersetzung von Variablen, die im eigenen Attribut verwendet werden! Dies trifft auch zu, wenn 2 Attribute durch Variablen auf sich gegenseitig verweisen.

Ansonsten ist jede beliebige Verknüpfung von Objekt-Attributen möglich.

Beispiel:
Attribute eines Windows-Jobs:
Arbeitsverzeichnis: C:\temp\work_&$date_yyyymmdd#\
Befehl: UCYBDBld -B -C0001 -X&$WORK_DIR#\UC_DATA.TXT -EREPLACE
Der Inhalt des Feldes Kommando ist vom Arbeitsverzeichnis abhängig, das wiederum eine Systemwert-Variable enthält. Zuerst wird das Datum in das Feld "Arbeitsverzeichnis" eingetragen und danach die Variable im Attribut "Kommando" durch den Inhalt ersetzt.

Überschreitet der Wert des Attributes mit Ersetzungen die maximal erlaubte Länge, so wird ab der Feldgrenze abgeschnitten.

In Attributen ist auch die Verwendung von vordefinierte Variablen für Werte von Variablen-Objekten möglich.

Vordefinierte Variablen für System und Objektwerte können auch als Teil eines Variablen-Platzhalters verwendet werden. Beispiel: {VARA&$CLIENT#}
Umgekehrt ist dies nicht möglich, da System- und Objektwerte vor Variablenwerten eingesetzt werden.


Siehe auch:

Allgemeines zu vordefinierten Variablen
Dialog "Variablen-Auswahl"
Liste der vordefinierten Variablen für System- und Objektwerte

 


Automic Documentation - Tutorials - Automic Blog - Resources - Training & Services - Automic YouTube Channel - Download Center - Support

Copyright © 2016 Automic Software GmbH