Variablen und VARA-Objekte

Variablen und VARA-Objekte sind Platzhalter für Werte, die Sie in ausführbaren Objekten verwenden. Wenn ein Objekt generiert wird, löst das System Variablen und Referenzen auf VARA-Objekte auf, um Werte aus verschiedenen Quellen abzurufen. Die Werte von Variablen und VARA-Objekten werden bei Aktivierung oder zur Laufzeit aufgelöst, abhängig davon, was auf der Seite Attribute der Objektdefinition definiert.

Als Entwickler und Objektdesigner erstellen Sie Variablen und VARA-Objekte und verwenden sie in ausführbaren Objekten.

Als Systemadministrator pflegen Sie Mandanten- und Systemvariablen sowie VARA-Objekte.

Dieses Thema beschreibt die Unterschiede zwischen den verschiedenen Variablentypen und VARA-Objekten.

Weitere Informationen finden Sie hier:

Diese Seite beinhaltet Folgendes:

VARA-Objekte

VARA-Objekte sind Entities mit eigenen Attributen wie jedes andere Objekt in Ihrem System. Die folgenden Arten von VARA-Objekten sind verfügbar:

  • Vordefinierte VARA-Objekte für System- und Mandantenwerte
  • Benutzerdefinierte VARA-Objekte
  • Virtuelle Agenten-VARA-Objekte

Als Administrator definieren Sie Systemeinstellungen, die festlegen, was passieren soll, wenn VARA-Objekte nicht aufgelöst werden können. Weitere Informationen finden Sie unter VARA_ERROR_ON_REPLACEMENT in UC_CLIENT_SETTINGS - Verschiedene Client-Einstellungen.

Vordefinierte VARA-Objekte für System- und Mandantenwerte

Ihr System enthält im Mandanten 0 vordefinierte VARA-Objekte, die System- und Mandantenwerte speichern. Diese Objekte steuern das Verhalten des Systems und der Mandanten. Der Zugriff auf diese Art von VARA-Objekten ist in der Regel auf Administratoren beschränkt.

VARA-Objekte, die systemweite Parameter enthalten, müssen im Mandanten 0 verbleiben.

VARA-Objekte, die das Verhalten von Mandanten und deren Prozessen steuern, können in den jeweiligen Mandanten gespeichert werden.

Weitere Informationen finden Sie unter Liste der VARA-Objekte für System- und Mandantenwerte.

Hinweis: In Job-Formularen können Sie keine vordefinierten VARA-Objekte verwenden.

Benutzerdefinierte VARA-Objekte

Als Entwickler und Objektdesigner erstellen Sie VARA-Objekte, um Werte zu speichern und zu verwenden. Ihre VARA-Objekte können Werte aus verschiedenen Quellen (Datenbanken, Verzeichnissen usw.) dynamisch abrufen. Sie können ihnen auch statische Werte zuweisen. Benutzerdefinierte VARA-Objekte werden bei der Installation nicht mitgeliefert. Ihr System enthält jedoch Vorlagen für verschiedene Typen benutzerdefinierter VARA-Objekte.

Verwenden Sie VARA-Objekte, um Objektkonfiguration von der Automatisierungslogik in Workflows, Aktionen und Action Packs zu trennen. Normalerweise benötigen Workflows Eingabeparameter für die Verarbeitung. Diese Parameter sind Konfigurationswerte wie Agenten, Anmeldeobjekte usw. Diese Werte können sich im Laufe der Zeit ändern, und sie können auch unterschiedlich sein, je nachdem, in welchem System Ihre Workflows ausgeführt werden (z. B. Entwicklung, Test oder Produktion).

Statt die Konfigurationswerte in allen Workflows und Systemen manuell zu ändern, können Sie diese Werte in Variablen (VARA-Objekten) speichern. Anschließend verweisen Sie in Ihren Workflows auf die VARA-Objekte. Es gibt verschiedene Möglichkeiten zum Verweisen auf VARAs in Workflows.

Weitere Informationen über die Definition von VARA-Objekten finden Sie unter Benutzerdefinierte VARA-Objekte.

Weitere Informationen zum effizienten Konfigurieren von Workflows mithilfe von VARA-Objekten finden Sie in diesem Video: Effiziente Workflow-Konfiguration mithilfe von VARA-Objekten

Virtuelle Agenten-VARA-Objekte

Agentenvariablen speichern Agenteninformationen und -einstellungen. Sie sind entweder im Mandant 0 oder in der Datenbank verfügbar. Eine Liste aller verfügbaren Agentenvariablen finden Sie unter Liste der Agentenvariablen.

Hinweis: Sie können keine Werte in Agentenvariablen per Script setzen.

Geben Sie als Administrator alle Agentenvariablen im Abschnitt [VARIABLES] der INI-Datei des Agenten an. Auf diese Weise stellen Sie sicher, dass die Variablenwerte entsprechend der Umgebung gesetzt werden.

Beispiel

[VARIABLES]

UC_HOST_CODE=UC_CODE

UC_HOST_JCL_VAR=NSK

UC_EX_PATH_BIN=$data01.uc4

UC_EX_PATH_CACHE=c:\AE11\agents\windows\CACHE\0100\
UC_EX_PATH_JOBREPORT=$data01.
UC_EX_JOB_MD=$data01.uc4.ucxjns1r

Verwenden Sie Script-Elemente wie GET_VAR, um Werte aus der Agentenvariable abzurufen.

Syntax

GET_VAR (Agenten-Variable, Agenten-Name)

Variablen

Es werden verschiedene Arten von Variablen verwendet, um Werte zu speichern und zu übergeben. Einige Variablen sind vordefiniert und können von Benutzern nicht gesetzt werden, während Sie andere frei erstellen können. Variablen werden bei der Generierung der Aufgabe aufgelöst. Im Gegensatz zu VARA-Objekten werden Variablen in Scripts gespeichert und sind keine eigenständigen Objekte.

Vordefinierte Variablen

Vordefinierte Systemvariablen haben immer denselben Wert für den gesamten Mandanten oder das gesamte Automation Engine-System. Auf sie kann von allen Aufgaben aus zugegriffen werden. Die folgenden Typen vordefinierter Variablen sind verfügbar:

  • Vordefinierte Variablen für Systemwerte

    Diese Variablen rufen Werte von der Automation Engine oder vom Mandanten ab.

  • Vordefinierte Variablen für Objektwerte

    Vordefinierte Objektvariablen hängen von den ausführbaren Objekten ab, die Sie verwendet haben, und vom Status des Objekts.

Sie können diese vordefinierten Variablen in Scripts und Objektdefinitionen verwenden. In Scripts werden Variablen aufgelöst und durch Werte ersetzt, wenn das Script verarbeitet wird. In Objektdefinitionen werden die Werte dieser Variablen nach der Verarbeitung des Scripts ersetzt. Sie können vordefinierte Variablen verwenden, um Objektattribute zu modifizieren.

Vordefinierte Variablen werden im Script-Editor blau dargestellt.

Hinweise:

  • Verwenden Sie keine System- oder Objektvariable in ihrem eigenen Objektattribut. Wenn Variablen in ihrem eigenen Attribut verwendet werden, werden sie bei der Verarbeitung des Scripts nicht ersetzt.
  • Definieren Sie keine Attribute, die sich über Variablen aufeinander beziehen. Attribute, die sich über Variablen aufeinander beziehen, werden bei der Verarbeitung des Scripts nicht ersetzt.

Weitere Informationen finden Sie unter Variablen für System- und Objektwerte.

Script-Variablen

Script-Variablen spielen eine grundlegende Rolle beim Schreiben von Scripts. Erstellen Sie sie, um Werte in den Scripts zu speichern und zu übergeben, die Sie auf den Prozess-Seiten von ausführbaren Objekten definieren. Sie können auch einige Objekteigenschaften mit Script-Variablen definieren.

Script-Variablen können nur Text enthalten. Ihre Werte dürfen nicht mehrere Zeilen enthalten. Als Arrays deklarierte Variablen können mehrere Werte enthalten.

Sie verwenden Script-Anweisungen wie :SET, :PSET oder :RSET, um Script-Variablen zu setzen und zu deklarieren, und um einer Script-Variablen Werte zuzuweisen. Sie verwenden :DEFINE, um die Variable als ein Array zu definieren. Mit :GET_SCRIPT_VAR und :SET_SCRIPT_VAR setzen und lesen Sie die Werte von Script-Variablen per indirekter Referenz.

Script-Variablen werden im Script-Editor violett dargestellt.

Beispiele

Einer Script-Variablen wird ein numerischer Wert zugewiesen:

:SET&NUMBER# = 1

Der Wert einer Script-Variablen wird einer anderen Variablen zugewiesen:

:SET&NR# = &NUMBER#

Weitere Informationen finden Sie hier:

Objektvariablen

Objektvariablen rufen Werte aus Objekteigenschaften ab (Werte in den Eingabefeldern), oder aus der Laufzeitinstanz des Objekts (der Aufgabe). Sie definieren Objektvariablen auf der Seite Variablen ausführbarer Objekte. Alternativ können Sie die Script-Anweisung :PSET auf den Prozess-Seiten verwenden. Diese Objektvariablen werden in der Objektdefinition gespeichert. Child-Aufgaben können Objektvariablen von Parent-Objekten erben.

Objektvariablen können mehrzeiligen Text enthalten. Sie werden im Script-Editor violett dargestellt.

Weitere Informationen finden Sie hier:

PromptSet-Variablen

Wenn Sie in einem PromptSet Werte definiert haben, werden diese Werte als PromptSet-Variablen gespeichert. Wenn das PromptSet einem Objekt zugewiesen wird, werden diese Werte während der Ausführung verwendet. Sie können jedoch auf eine der folgenden Arten überschrieben werden:

  • Manuell bei der Objektausführung
  • Sie können beim Aufruf des PromptSets verschiedene Werte angeben
  • Durch die Definition verschiedener Werte auf der Objektseite PromptSet
  • Wenn das Objekt aus einem Workflow oder einer Schedule heraus ausgeführt wird

Der Typ der Daten, die PromptSet-Variablen enthalten können, hängt vom Elementtyp im PromptSet ab, in dem sie definiert wurden. Nachdem eine PromptSet-Variable definiert wurde, ist der Wert schreibgeschützt und kann nicht geändert werden.

PromptSet-Variablen können auch mit: :READ-Anweisungen in Scripts definiert werden. Sie werden im Script-Editor violett dargestellt.

Weitere Informationen finden Sie hier:

Variablen im Read-Buffer ablegen

Der Read-Buffer speichert Werte temporär, damit andere Aufgaben sie verwenden können. Diese Werte werden gelöscht, nachdem sie verbraucht wurden. Wenn ein Prozess mehrere Aufgaben enthält, speichern die Read-Buffer-Variablen ihre Werte in chronologischer Reihenfolge. Diese Werte werden auch in chronologischer Reihenfolge verwendet. Beispielsweise werden in einem Prozess mit drei Aufgaben die Werte bei der ersten Verwendung der Funktion ACTIVATE_UC_OBJECT durch die erste verwendete Aufgabe gespeichert.

Verwenden Sie Script-Anweisungen, um Werte von Script-Variablen oder PromptSet-Variablen im Read-Buffer zu speichern, wenn Sie ein Objekt über ein Script mithilfe von ACTIVATE_UC_OBJECT aktivieren.

Ihr System beinhaltet vordefinierte Variablen (UC_CAUSE*-Variablen), die Details einer Aufgabe abrufen und die Werte im Read-Buffer zwischenspeichern. Werte werden im Read-Buffer gespeichert, wenn Sie Folge- oder Alternativ-Aktionen (die Ausführung eines anderen Objekts) angeben, falls eine Bedingung oder ein Status nicht erfüllt ist.

  • Ausführbare Objekte

    • Wenn der Status einer Aufgabe nicht in dem Bereich liegt, der im Abschnitt Behandlung des Rückgabewertes auf der Seite Laufzeit der Objektdefinition festgelegt wurde
    • Wenn der Status einer Aufgabe nicht derjenige ist, der im Abschnitt Aufgaben-Ergebnisauswertung auf der Seite Attribute festgelegt wurde
  • Workflows

    • Wenn eine Aufgabe nicht zum durch den Prüfpunkt angegebenen Zeitpunkt ausgeführt werden kann, wie auf der Registerkarte Zeit und Abhängigkeiten der Aufgabe definiert
    • Wenn die im Abschnitt Abhängigkeiten (Registerkarte Zeit und Abhängigkeiten) für eine Aufgabe definierten Bedingungen nicht erfüllt sind
    • Wenn die Laufzeit einer Aufgabe vom Erwartungswert abweicht, wie auf der Registerkarte Laufzeit definiert
  • Schedules

    • Wenn die Laufzeit einer Aufgabe vom Wert abweicht, der in den Laufzeiteigenschaften der Aufgabe definiert ist
    • Wenn der Status einer Aufgabe vom Status abweicht, der in den Ergebniseinstellungen angegeben ist
  • ALARM- und STANDARD-Benachrichtigungen

    Wenn das Objekt eskaliert, indem ein anderes CALL-Objekt ausgeführt wird

Weitere Informationen finden Sie hier:

Variablennamen

Variablennamen haben die folgende Syntax:

  • Vorangestelltes kaufmännisches Und-Zeichen (&)
  • Das zweite Zeichen nach dem führenden kaufmännischen "Und" darf keine Zahl und kein Dollarzeichen ($) sein. Der Grund dafür ist, dass das Dollarzeichen für vordefinierte System- und Objektvariablen reserviert ist.

    Beispiele:

    &$NAME#, &$STATUS#, &$RUNID# sind vordefinierte Objektvariablen

    &$SYSTEM#, &$CLIENT#, &$USER# sind vordefinierte Systemvariablen

    &DATETIME1#, &string# sind Script-Variablen

  • Maximale Länge: 32 Zeichen

    Das vorangestellte kaufmännische Und-Zeichen wird nicht gezählt. Die Länge des zurückgegebenen Wertes ist nicht begrenzt.

  • Zulässige Werte: A-Z, a-z, 0-9, , _, @, § und #

  • Verwenden Sie keine Akzentzeichen

  • Bei Variablennamen muss die Groß-/Kleinschreibung nicht beachtet werden.

  • Abschluss des Variablennamens

    In dieser Dokumentation enden Variablennamen mit dem Zeichen #. Es ist nicht zwingend erforderlich, Variablennamen damit abzuschließen, aber es ist eine empfohlene Konvention. Der Grund hierfür ist, dass Variablennamen keine Teil-Strings anderer Variablennamen sein dürfen. Wenn Sie beispielsweise eine Variable mit dem Namen &UNR haben, können Sie keine Variable mit dem Namen &UNR_SC definieren, da es sich bei dem ersten Namen um einen Teil-String des zweiten Namens handelt. # als letztes Symbol im Variablennamen hilft Ihnen, diese Einschränkung zu umgehen. Es ist nicht zwingend erforderlich, aber es ist empfehlenswert, es zu verwenden, da es sicherstellt, dass sich Namen nicht überschneiden. Betrachtet man wieder das vorige Beispiel, ist &UNR# kein Teil-String von &UNR_SC#.

    Sie können ein beliebiges Zeichen verwenden, das in einem Variablennamen als Endzeichen zulässig ist.

    Wichtig!

    • Verwenden Sie die Endzeichen konsistent
    • Verwenden Sie das Endzeichen nicht in der Mitte von Variablennamen.

Beispiele:

  • Variablen für System- und Objektwerte: &$CLIENT#, &$DATE_format#, &$DATABASE_NAME#
  • Variablen: &HEADER#, &ROW#, &parentname#

Werte ermitteln

In ausführbaren Objekten rufen Sie Werte aus Variablen und VARA-Objekten wie folgt ab:

  • Geben Sie in Eingabefeldern und Kombinationsfeldern (sofern unterstützt) den Variablennamen ein
  • Klicken Sie auf das Variablensymbol, um den Dialog zur Variablen-Auswahl zu öffnen, in dem die VARA-Objekte und Variablen wie folgt gruppiert sind:

    • Systemeigenschaften

      System- und Mandanten-Variablen.

    • Objekteigenschaften

      Objektvariablen, die Werte abrufen, die entweder in den Objekteigenschaften angegeben sind oder die von ihrer Laufzeitinstanz (der Aufgabe) abgeleitet sind

    • Automation-Variablen

      Liste der System- und Mandanten-VARA-Objekte

    • Variablenobjekte

      Liste der benutzerdefinierten VARA-Objekte, die im aktuellen Mandanten verfügbar sind

Eine vollständige Liste der System- und Objektvariablen finden Sie unter Variablen für System- und Objektwerte

Objektattribute mit Werten aus VARA-Objekten definieren

Geben Sie in das Eingabefeld, in dem Sie das VARA-Objekt verwenden möchten, den Namen in geschweiften Klammern ein. Geben Sie optional Schlüssel- und Spaltenparameter an, um einen bestimmten Wert im VARA-Objekt auszuwählen.

Syntax

{ Variablenobjekt [, Schlüssel [, Spaltennummer ]] }.

Beispiel

Der folgende Ausdruck wird bei der Generierung der Aufgabe durch einen Wert aus einem VARA-Objekt ersetzt:

{MONITOR_SP1, 2, 3}

wobei

  • MONITOR_SP1 der Name des VARA-Objekts ist
  • 2 ist der Schlüssel
  • 3 ist die Spalte

Die Parameter Schlüssel und Spalte sind optional. Wenn Sie die Parameter nicht angeben, wählt das System den Wert je nach Typ des VARA-Objekts wie folgt aus.

  • Statische VARA-Objekte

    Der Ausdruck wird durch den Wert ersetzt, der in der ersten Spalte des VARA-Objekts definiert ist

  • Dynamische VARA-Objekte

    Die Spaltennummer wird durch den Wert in der Spalte Ergebnisse ersetzt

Werte aus Variablen und VARA-Objekten in Scripts abrufen

Rufen Sie in Scripts Werte aus Variablen und VARA-Objekten auf die folgende Weise ab:

  • Rufen Sie die folgenden Variablen direkt aus Ihren Scripts ab

    • Script-Variablen
    • Read-Buffer-Variablen
    • PromptSet-Variablen
    • Vordefinierte System- und Objektvariablen direkt in Ihren Scripts.
  • Verwenden Sie zum Abrufen von Werten, die in VARA-Objekten gespeichert sind, Script-Funktionen wie GET_VAR

    Wichtig! Im Gegensatz zu Script-Variablen können Sie vordefinierte VARA-Objekte in Scripts nicht direkt aufrufen.

    Beispiel: 

    Das folgende Script ermittelt den Pfad zum Verzeichnis, in dem der Agent (WIN01) Job-Reports speichert.

    : SET   &jobreport# = GET_VAR ( 'UC_EX_PATH_JOBREPORT' , 'WIN01' )

  • Um den Wert eines Objektattributs abzurufen, verwenden Sie die Script-Funktion GET_ATT.

    Wenn das Objektattribut eine Variable wie beispielsweise eine Objektvariable enthält, löst das System die Variable auf und ruft den Wert ab. Diese Funktion ändert oder ersetzt die Variable selbst nicht.

    Beispiel:

    Das folgende Script ruft den Wert eines Objektattributs mit der Script-Funktion GET_ATT ab.

    :SET&MYINTERNALACCT# = GET_ATT(&$INT_ACCOUNT#)

  • Verwenden Sie zum Abrufen von Werten, die im Read-Buffer gespeichert sind, die Script-Anweisung :READ.

Weitere Informationen finden Sie hier:

Siehe auch: