Zum Inhalt springen

Lokale Variablen in Jitterbit Studio

Einführung

Lokale Variablen in Harmony sind die Art von Variablen, die am stärksten in ihrem Geltungsbereich eingeschränkt sind. Sie werden innerhalb eines Skripts deklariert und können nur innerhalb dieses Skripts zugegriffen werden. Aus diesem Grund sollten Sie eine lokale Variable nur verwenden, wenn die Variable vorübergehend im aktuellen Skript benötigt wird.

Vorsicht

Verwenden Sie keine lokale Variable, wenn die Variable für die Verwendung in anderen Teilen des Projekts bestehen bleiben soll. Für die Verwendung außerhalb des aktuellen Skripts verwenden Sie eine globale Variable oder eine Projektvariable.

Erstellen einer lokalen Variable

Da eine lokale Variable keinen Wert haben kann, bevor sie definiert ist, müssen Sie sie definieren, bevor Sie sie verwenden.

Im System wird eine lokale Variable durch das Fehlen des Dollarzeichens $ erkannt, das normalerweise dem Namen einer globalen Variable vorangestellt ist. Da das $ fehlt, wird eine lokale Variable nicht global "gesehen". Während eine globale Variable verwendet werden kann, um einen Wert zwischen verschiedenen Skripten zu übergeben, wird die lokale Variable nach der Ausführung des Skripts, das sie verwendet, für das System nicht mehr sichtbar.

Um eine lokale Variable festzulegen und zu verwenden, lassen Sie einfach das $ weg. Eine lokale Variable kann nicht mit den Funktionen Set und Get festgelegt oder abgerufen werden.

Namen lokaler Variablen

Namen lokaler Variablen können aus diesen Zeichen bestehen: Buchstaben (a-z, A-Z), Zahlen (0-9) und Unterstrichen. Andere Zeichen, wie Punkte oder Bindestriche, sind nicht erlaubt und können Probleme verursachen.

Beispiele

In diesem Beispiel ist now eine lokale Variable und ist nur in diesem Skript verfügbar (das heißt, vor dem abschließenden </trans>-Tag). Im Gegensatz dazu ist $tomorrow eine globale Variable, die bis zum Ende der aktuellen Operationenkette verfügbar ist:

<trans>
now = Now();
WriteToOperationLog("The time is " + now);
$tomorrow = now + 60*60*24;
</trans>

Da der Geltungsbereich lokaler Variablen innerhalb des Skripts liegt, kann die Benennung der Variablen einfach sein. Zum Beispiel können lokale Variablen now, return, myVariable usw. genannt werden.

Dieses Beispiel ruft den Wert eines Knotens ab, und wenn dieser Wert null ist, wird er auf den String "Not Set" gesetzt und anschließend der Wert zurückgegeben:

<trans>
value = root$transaction.request$body$Calculate$input.Operand1$;
if(IsNull(value),
    value = "Not Set"
  );
value
</trans>

Dieses Beispiel ruft die Werte von drei Knoten ab, addiert den höheren der ersten beiden Werte zum dritten Wert und gibt dann den dritten Wert zurück:

<trans>
value1 = root$transaction.request$body$Calculate$input.Operand1$;
value2 = root$transaction.request$body$Calculate$input.Operand2$;
value3 = root$transaction.request$body$Calculate$input.Operand3$;

if(value1 > value2,
    value3 += value1
  , //else
    value3 += value2
  );
value3
</trans>