Globale Variablen im Jitterbit Integration Studio
Einführung
Globale Variablen sind eine der Arten von globalen Datenelementen, die in Harmony verfügbar sind. Die anderen Arten von globalen Datenelementen — Projektvariablen, Jitterbit-Variablen und Dateinamen-Schlüsselwörter — sind ebenfalls global in einem Projekt verfügbar. Sie werden unterschiedlich festgelegt, wie in Projektvariablen, Jitterbit-Variablen und Dateinamen-Schlüsselwörtern beschrieben. Da jedoch alle globalen Datenelemente denselben Namensraum teilen, müssen ihre Namen im Vergleich zu allen anderen globalen Datenelementen eindeutig sein.
Globale Variablen werden zunächst in einer Operation deklariert, nach der sie in derselben oder nachgelagerten Operationen und Skripten referenziert werden können. Nachgelagerte Operationen oder Skripte sind diejenigen, die innerhalb einer Operationskette mit Operationsaktionen oder den Funktionen RunOperation
oder RunScript
verknüpft sind. Nachgelagerte Operationen können innerhalb derselben oder nachgelagerter Workflows liegen.
Globale Variablen können auch als Quelle oder Ziel innerhalb der Operation verwendet werden, wie in Variable lesen und Variable schreiben beschrieben.
Sie möchten möglicherweise globale Variablen verwenden, wenn Ihr Anwendungsfall das Teilen von Informationen mit nachfolgenden Teilen einer Operationskette umfasst, wie in diesen Beispielen:
- Werte, die in einer Transformation erstellt wurden, in einer späteren Transformation verwenden. Zum Beispiel kann eine Sitzungs-ID (die von einem Login-Webdienst zurückgegeben wird) erforderlich sein, wenn nachfolgende Webdienste zur Authentifizierung aufgerufen werden.
- Einen Wert, der in einem Teil einer Transformation erstellt wurde, zu einem späteren Zeitpunkt derselben Transformation verwenden. Zum Beispiel kann eine Datensatznummer initialisiert und für jeden in ein Ziel eingefügten Datensatz erhöht werden, um die Artikelnummer zu identifizieren.
- Einen Wert, der in einer Transformation zurückgegeben wird, in der Konfiguration von Komponenten in nachfolgenden Operationen verwenden. Zum Beispiel kann die von einer Transformation zurückgegebene URL-Einstellung verwendet werden, um die Webdienst-URL eines nachfolgenden Webdienstaufrufs festzulegen.
Globale Variablen werden durch verkettete Operationen weitergegeben. Dazu gehören Operationen, die über "bei Erfolg" oder "bei Fehler" Operationenaktionen mit einer vorherigen Operation innerhalb der Operationenkette verknüpft sind, sowie solche, die über die Funktion RunOperation
verknüpft sind. Globale Variablen können auch innerhalb derselben Transformation verwendet werden.
Anzeige globaler Variablen
Definierte globale Variablen werden an mehreren Stellen angezeigt:
- Im Projektbereich werden globale Variablen im Komponenten-Tab in der Kategorie Globale Variablen angezeigt. Von hier aus können Sie sehen, ob die globale Variable an anderer Stelle im Projekt referenziert wird, und Abhängigkeiten einsehen.
- Im Skripteditor werden globale Variablen in der Skriptkomponenten-Palette im Variablen-Tab im Unter-Tab Globale Variablen angezeigt. Dieser Standort bietet einfachen Zugriff zum Einfügen von Referenzen auf globale Variablen in Skripten, einschließlich innerhalb von Transformationsskripten.
- In einer Transformation werden globale Variablen im Variablen-Tab auf der linken Seite in der Kategorie Globale Variablen angezeigt. Dieser Standort bietet einfachen Zugriff zum Einfügen von Referenzen auf globale Variablen während der Transformationszuordnung.
- In Endpunktkonfigurationsbildschirmen können globale Variablen in allen Feldern, die ein Variablen-Icon haben, aufgerufen und verwendet werden. Alternativ zur Auswahl einer globalen Variable können Sie die Variablenreferenz manuell unter Verwendung der standardmäßigen Jitterbit-Skript-Syntax mit eckigen Klammern eingeben.
Erstellen und Aktualisieren globaler Variablen
Globale Variablen werden entweder mit Jitterbit Script (in Skripten und Transformationen) oder mit JavaScript (nur in Skripten, die als Projektkomponente erstellt wurden) erstellt oder aktualisiert. Siehe Skripttypen und Erstellung für Informationen zur Erstellung der verschiedenen Skripttypen. Globale Variablen, die in einer Variablenverbindung konfiguriert sind, werden automatisch erstellt oder aktualisiert (siehe Variablenverbindung).
Namen globaler Variablen
Namen globaler Variablen können aus alphanumerischen Zeichen (den Buchstaben a-z und A-Z sowie den Ziffern 0-9), Punkten (.) und Unterstrichen (_) bestehen. (Andere Zeichen, wie Bindestriche, werden nicht empfohlen und können Probleme verursachen.) Namen globaler Variablen sind nicht groß-/kleinschreibungssensitiv; eine Variable namens GlobalVar
wird genauso behandelt wie globalvar
.
Es ist eine gute Praxis, Punkte oder Unterstriche bei der Definition globaler Variablen zu verwenden, damit sie leicht zu finden sind. Zum Beispiel beginnt eine in einem Jitterbit Script erstellte globale Variable mit dem Namen org.account.filename
mit org
, gefolgt von account
usw., was sie effektiv organisiert, wenn sie in einer Liste unter anderen ähnlich konstruierten globalen Variablen steht. Beachten Sie, dass für globale Variablen, die in JavaScript erstellt wurden (oder für Jitterbit Script globale Variablen, die später in JavaScript verwendet werden könnten), empfohlen wird, Unterstriche anstelle von Punkten zu verwenden. Die Verwendung von Punkten in benutzerdefinierten globalen Variablen verursacht zur Laufzeit Probleme. Weitere Informationen finden Sie im nachstehenden Abschnitt JavaScript.
Jitterbit Script
In Jitterbit Script, das innerhalb von Skripten und Transformationen verwendet wird, kann eine globale Variable definiert werden, indem man mit einem Dollarzeichen $
beginnt oder die Funktion Set
aufruft:
$
: Mit der Dollarzeichen-Syntax$
erstellt oder aktualisiert$ServerURL=URL
eine globale Variable namensServerURL
mit dem Wert vonURL
(dem Namen einer anderen Variablen oder dem Namen eines Feldes in einer Transformation).Set
: Mit der FunktionSet
erstellt oder aktualisiertSet("ServerURL", URL)
eine globale Variable namensServerURL
mit dem Wert vonURL
(dem Namen einer anderen Variablen oder dem Namen eines Feldes in einer Transformation).
JavaScript
In JavaScript, das innerhalb von Skripten verwendet wird, die als Projektkomponente erstellt wurden, hängt die Syntax zum Setzen einer globalen Variable davon ab, ob der Name der globalen Variable einen Punkt enthält:
-
Name enthält keinen Punkt (empfohlen): Eine globale Variable, die keinen Punkt in ihrem Namen enthält, kann mit
var $<name>
erstellt oder aktualisiert oder einfach durch die Verwendung von$<name>
ohnevar
aktualisiert werden:var $
: Der Ausdruckvar $ServerURL="https://www.example.com/"
erstellt oder aktualisiert eine globale VariableServerURL
mit einem Stringwert vonhttps://www.example.com/
. Eine neue globale Variable muss mitvar
vor dem$
stehen.$
: Der Ausdruck$ServerURL="https://www.example.com/"
aktualisiert dieselbe globale VariableServerURL
mit derselben String-URL. Dies funktioniert nur für globale Variablen, die bereits existieren.
-
Name enthält einen Punkt (nur für Jitterbit-Variablen und JavaScript-Objektwerte empfohlen): Eine Variable, die Punkte in ihrem Namen enthält, kann in JavaScript nur mit den Funktionen
Jitterbit.SetVar
undJitterbit.GetVar
aktualisiert oder abgerufen werden. Da diese Funktionen nicht für benutzerdefinierte globale Variablen gedacht sind, siehe Jitterbit-Variablen für weitere Informationen.Warnung
Die JavaScript-Funktionen
Jitterbit.SetVar
undJitterbit.GetVar
sind speziell dafür konzipiert, auf die vordefinierten Jitterbit-Variablen zuzugreifen. Sie sind nicht dafür gedacht, um auf benutzerdefinierte globale Variablen zuzugreifen.
Variable endpoint
Während der Konfiguration einer Variablenverbindung kann eine globale Variable automatisch erstellt oder aktualisiert werden.
Das bedeutet, wenn Sie während der Konfiguration den Namen einer Variable angeben, die noch nicht existiert, wird automatisch eine globale Variable erstellt. Wenn Sie den Namen einer bereits existierenden globalen Variable angeben, wird diese mit dem Variablenendpunkt verknüpft.
Für Details zur Erstellung oder Aktualisierung einer globalen Variable mit dieser Methode siehe Variablenverbindung.
Globale Variablen in Skripten oder Transformationen abrufen
Der Wert einer globalen Variable kann entweder mit Jitterbit Script (in Skripten oder Transformationen) oder mit JavaScript (nur in als Projektkomponente erstellten Skripten) zurückgegeben werden.
Jitterbit Script
In Skripten und Transformationen können Sie mit einem Dollarzeichen $
beginnen oder die Funktion Get
verwenden, um den Wert einer globalen Variable abzurufen:
$
: Mit einem Dollarzeichen$
vorangestellt, ruft das Codebeispiel$serverURL
den Wert (oder das Feld in einer Transformation) der globalen Variable mit dem Namen "serverURL
" ab.Get
: Mit der FunktionGet
gibt das CodebeispielGet("serverURL")
denselben Wert (oder dasselbe Feld in einer Transformation) zurück.
In Skripten und Transformationen werden vorhandene globale Variablen auch im Variablen-Tab der Skriptkomponentenpalette im Untertab Globale Variablen angezeigt. Siehe Fügen Sie eine globale Variable zu einem Skript hinzu unten.
JavaScript
In JavaScript Skripten innerhalb einer Operation hängt die Syntax zum Abrufen des Wertes einer globalen Variablen davon ab, ob der Name der globalen Variablen einen Punkt enthält.
-
Name enthält keinen Punkt (empfohlen): Der Wert einer globalen Variablen, die keinen Punkt in ihrem Namen enthält, kann abgerufen werden, indem mit einem Dollarzeichen
$
begonnen wird. Mit dem Dollarzeichen$
vorangestellt, ruft der Ausdruck$ServerURL
den Wert der globalen Variablen mit dem NamenServerURL
ab. -
Name mit Punkten (empfohlen nur für Jitterbit-Variablen und JavaScript-Objektwerte): Eine Variable, die einen Punkt in ihrem Namen enthält, kann in JavaScript nur mit den Funktionen
Jitterbit.SetVar
undJitterbit.GetVar
aktualisiert oder abgerufen werden. Da diese Funktionen nicht für benutzerdefinierte globale Variablen gedacht sind, siehe den Abschnitt über Jitterbit-Variablen für weitere Informationen.Warnung
Die JavaScript-Funktionen
Jitterbit.SetVar
undJitterbit.GetVar
sind speziell dafür konzipiert, auf die vordefinierten Jitterbit-Variablen zuzugreifen. Sie sind nicht dafür gedacht, um auf benutzerdefinierte globale Variablen zuzugreifen.In JavaScript mischen Sie nicht Ihre Verwendung von
SetVar
(undGetVar
) mit$
-Präfixen, wenn Sie eine Variable setzen (und abrufen). Verwenden Sie nur eine Syntax. Das Mischen der beiden unterschiedlichen Syntaxen für dieselbe Variable kann zur Laufzeit Probleme verursachen.Wenn ein JavaScript fehlschlägt, gehen alle Änderungen am Wert einer globalen Variablen verloren. Nur wenn das JavaScript erfolgreich abgeschlossen wird, sind die modifizierten Werte globaler Variablen außerhalb des Skripts verfügbar.
In Skripten und Transformationen werden vorhandene globale Variablen auch im Variablen-Tab des Skriptkomponenten-Paletten innerhalb des Global Variables-Untertabs angezeigt. Siehe Fügen Sie eine globale Variable zu einem Skript hinzu unten.
Fügen Sie einer Skriptdatei eine globale Variable hinzu
In Jitterbit Script oder JavaScript, das innerhalb von Skripten erstellt wurde, werden vorhandene globale Variablen im Variablen-Tab der Skriptkomponentenpalette im Unter-Tab Globale Variablen angezeigt:
Verwenden Sie die Offenlegungstriangeln, um Nutzungsdetails anzuzeigen oder auszublenden, einschließlich der Komponenten, die von der Variablen lesen oder in die Variable schreiben:
Sie können auf den Namen einer beliebigen Komponente klicken, um ihren Konfigurationsbildschirm zu öffnen.
Um die Variablensyntax in ein Skript (Jitterbit Script oder JavaScript) einzufügen, verwenden Sie eine dieser Methoden:
- Ziehen Sie die Variable aus der Palette in das Skript, um die Variablensyntax einzufügen.
- Doppelklicken Sie auf die Variable in der Palette, um die Variablensyntax an der Position des Cursors im Skript einzufügen.
- Beginnen Sie, den Variablennamen einzugeben, und drücken Sie dann
Control+Space
, um eine Liste von Autocomplete-Vorschlägen anzuzeigen. Wählen Sie eine Variable aus, um die Variablensyntax einzufügen. - Geben Sie die Variablensyntax manuell ein.
Verwenden Sie globale Variablen in Konfigurationsbildschirmen
Während der Konfiguration verschiedener Projektkomponenten, einschließlich der Endpunktkonfiguration mit Konnektoren, können Sie globale Variablen in allen Feldern verwenden, die ein Variablen-Symbol haben. Variablen können in Feldern zusammen mit anderen Eingaben verwendet werden, einschließlich anderer Variablen oder Schlüsselwörter. Diese Aktionen werden im Folgenden behandelt:
- Wählen Sie eine globale Variable aus
- Formate zwischen Pillen und Text umschalten
- Einen Standardwert definieren
- Eine Variable entfernen
Wählen Sie eine globale Variable
Um auf globale Variablen zuzugreifen, können Sie entweder auf das Variablen-Icon klicken oder eine offene eckige Klammer [
eingeben, um eine Liste von Variablen und Schlüsselwörtern anzuzeigen (sofern für das aktuelle Feld verfügbar).
In der Liste wird jeder Variablen- oder Schlüsselworttyp durch das Icon neben seinem Namen angezeigt:
für Dateinamen-Schlüsselwort für globale Variable für Projektvariable für Jitterbit-Variable
In der Liste fahren Sie mit der Maus über den Variablennamen, um Informationen darüber anzuzeigen:
Die Beschreibung im Informations-Popup ist [None] für eine globale Variable. Ein Wert wird nur populiert, wenn die globale Variable einen Standardwert hat, der in diesem Konfigurationsfeld angegeben ist.
Der Hintergrund des Icons ist durchgehend, wenn die globale Variable einen Standardwert hat, der in diesem Konfigurationsfeld angegeben ist, oder leer, wenn dies nicht der Fall ist. Der Hintergrund des Icons bleibt unverändert, wenn dieselbe globale Variable in einem anderen Konfigurationsfeld einen Wert hat, da nur ein Standardwert, der im aktuellen Feld angegeben ist, verwendet wird.
Warnung
Wenn eine globale Variable ihren Wert in einem Skript erhält, das stromaufwärts des Komponenten liegt, überschreibt ihr evaluierter Wert den Standardwert, der im Konfigurationsfeld angegeben ist. Beachten Sie, dass evaluierte Werte, die in einem Skript erhalten werden, nicht im Wert im Informations-Popup angezeigt werden.
Wählen Sie eine Variable aus, um sie an der Stelle des Cursors im Feld hinzuzufügen, überall im String. Die Variable wird in einem Pillenformat angezeigt, ähnlich dem unten Gezeigten:
Um Informationen über die Variable zu überprüfen, fahren Sie mit der Maus über die Variable-Pille:
Formate zwischen Pillen- und Textformat umschalten
Um das Standardformat der Variablen von Pille auf Textformat zu ändern, klicken Sie auf das Collapse-Symbol:
Dies schaltet die Anzeige des Pillenformats auf ein Textformat um, wobei der Variablenname in eckige Klammern [ ]
eingeschlossen ist:
Im Textformat können Sie einen Standardwert definieren.
Um von einem Textformat zurück zum Pillenformat zu wechseln, ändern Sie den Fokus von dem Feld, indem Sie beispielsweise in ein anderes konfigurierbares Feld klicken. Die Feldeingabe kehrt automatisch zum Standard-Pillenformat zurück.
Einen Standardwert definieren
Zur Laufzeit einer Operation wird ein innerhalb eines Konfigurationsfeldes definierter Standardwert, wie unten gezeigt, nur verwendet, wenn der Variablenwert zur Laufzeit nicht gesetzt wurde. Dies ist anders während des Skripttests, wo — da alle vorhergehenden Skriptwerte noch nicht instanziiert wurden — jeder innerhalb eines Konfigurationsfeldes definierte Standardwert stattdessen verwendet wird.
Um einen Standardwert innerhalb eines Konfigurationsfeldes zu definieren, wechseln Sie zuerst zum Textformat.
Unmittelbar nach dem Namen der globalen Variablen in den eckigen Klammern [ ]
geben Sie den Standardwert in geschweifte Klammern { }
an:
Wenn Standardwerte angegeben sind, wird der Wert der globalen Variablen verwendet, wenn er definiert ist, andernfalls wird der Standardwert verwendet.
Tipp
Wenn Sie eine globale Variable in einer WHERE-Klausel verwenden, wie zum Beispiel in einer Datenbank oder Salesforce Abfrage, können Sie einen Standardwert angeben, damit Skripttests möglich sind. Andernfalls, da eine globale Variable ihren Wert zur Laufzeit erhält, kann die Syntax während des Tests ungültig sein, wenn kein Standardwert angegeben wurde.
Wenn Sie nicht möchten, dass die globale Variable interpretiert wird, verwenden Sie einen Backslash \
, um die eckigen Klammern [
]
zu maskieren.
Zum Beispiel verwendet das Folgende den Wert von serverURL
nicht, auch wenn er definiert ist, sondern verwendet immer http://server/index.asp
:
\[serverURL{http://server/index.asp}]
Vorsicht
Innerhalb von Dateipfaden, die Backslashes enthalten, wird ein einzelner Backslash als Beginn einer Escape-Sequenz interpretiert, wenn er von einem eckigen Klammernsatz [
]
gefolgt wird.
Zusätzliche Backslashes können verwendet werden, um das gewünschte Ergebnis zu erzielen. Zum Beispiel wird \\server\share\\[Directory{testing}]
als \\server\share\testing
interpretiert, wenn die Variable Directory
nicht definiert ist, andernfalls wird \\server\share\"Wert von Directory"
verwendet.
Um dieses Problem zu vermeiden, konvertieren Sie Dateipfade in das URL-Format (z. B. C:/directory/path
).
Entfernen einer Variablen
Um die Variable zu entfernen, klicken Sie auf das Entfernen-Symbol:
Globale Variablenabhängigkeiten anzeigen
Die Abhängigkeiten einer globalen Variable sind die anderen Komponenten, die auf diese Variable verweisen, indem sie von ihr lesen oder in sie schreiben. Nachdem Sie eine globale Variable in einem Projekt erstellt und verwendet haben, können Sie diese Abhängigkeiten anzeigen.
Nachdem Sie eine globale Variable erstellt haben, wird die Option Abhängigkeiten anzeigen im Komponenten-Tab im Projektbereich verfügbar. Weitere Informationen zum Komponenten-Tab finden Sie im Komponentenaktionsmenü im Projektbereich Komponenten-Tab.
Die Option Abhängigkeiten anzeigen ändert die Ansicht im Projektbereich, um andere Komponenten des Projekts anzuzeigen, die auf die globale Variable verweisen.
Alternativ können Sie die Abhängigkeiten globaler Variablen direkt im Variablen-Tab der Skriptkomponentenpalette anzeigen.
Globalvariable-Abhängigkeitsansicht
In der Abhängigkeitsansicht wird der ausgewählte Name der Globalvariable oben angezeigt, unterhalb der vorhandenen Such- und Filteroptionen. Der Name der Globalvariable wird gefolgt von einer Liste von Abhängigkeiten, die auf die Variable verweisen.
Abhängigkeiten sind nach Kategorien wie Aktivität und Skript organisiert. Innerhalb jeder Kategorie werden die Komponenten als Lesen oder Schreiben klassifiziert, um zu zeigen, wie auf die Variable zugegriffen wird.
Sie können auf den Namen einer beliebigen Komponente klicken, um ihren Konfigurationsbildschirm zu öffnen.
Die folgenden Beispiele zeigen, wie verschiedene Arten von Variablenreferenzen in der Abhängigkeitsansicht angezeigt werden:
- Wenn ein Skript
$myVar1='abc'
enthält, wird ein Wert in die Variable geschrieben undmyVar1
für den Schreibzugriff referenziert. - Wenn ein Skript
$myVar2=$myVar1
enthält, wirdmyVar2
für den Schreibzugriff undmyVar1
für den Lesezugriff referenziert. - Wenn ein Skript
If(myVar1=='abc', TRUE, FALSE)
enthält, wirdmyVar1
für den Lesezugriff referenziert.
Globalvariable-Anleitungen
Siehe diese Abschnitte für Details zur Verwendung von Globalvariablen in Projekten:
- Konvertieren einer Globalvariable in eine Projektvariable
- Überprüfen auf null oder undefinierte Werte
- Setzen und Zugreifen auf Array-Variablen
Konvertieren einer Globalvariable in eine Projektvariable
Sie können eine bereits vorhandene Globalvariable in eine Projektvariable konvertieren.
Globalvariablen können während der Konfiguration der Projektvariable in Projektvariablen umgewandelt werden. Geben Sie beim Konfigurieren einer Projektvariable den Namen einer vorhandenen Globalvariable in das Namensfeld ein. Beim Speichern wird eine Aufforderung angezeigt, die Sie auffordert zu bestätigen, dass Sie die Globalvariable in eine Projektvariable umwandeln möchten:
Dialogtext
Globale Variable existiert bereits
Eine globale Variable mit demselben Namen existiert bereits im Projekt. Möchten Sie die vorhandene globale Variable in eine Projektvariable umwandeln?
Beim Klicken auf Weiter werden alle Verweise auf und Abhängigkeiten von der globalen Variable auf die Projektvariable übertragen. Dazu gehören Verweise auf die frühere globale Variable innerhalb von Skripten, die jetzt auf die Projektvariable verweisen. (Beachten Sie, dass ein Wert für eine Projektvariable, der in einem Skript während der Ausführung der Operationenkette festgelegt wird, den Standardwert überschreibt, der in der Konfiguration der Projektvariable angegeben ist.)
Für weitere Details zu Projektvariablen siehe Projektvariablen.
Überprüfen auf null- oder undefinierte Werte
Eine globale Variable, die nicht definiert wurde, hat einen Nullwert.
Zum Beispiel gibt IsNull(Get("GlobalVariableName"))
true zurück, wenn eine globale Variable mit dem Namen GlobalVariableName
noch nicht definiert wurde. Dies kann verwendet werden, um zu überprüfen, ob eine globale Variable definiert wurde oder nicht.
Array-Variablen festlegen und darauf zugreifen
Sie können Arrays von globalen Variablen erstellen, die auch als Array-Variablen bekannt sind. Siehe Arrays für Informationen zum Festlegen und Abrufen von Werten aus Array-Variablen.