Zum Inhalt springen

Lokale Variablen im Jitterbit Design Studio

Lokale Variablen in Jitterbit sind nur innerhalb des aktuell verwendeten Script oder Transformation verfügbar. Verwenden Sie eine lokale Variable nur, wenn die Variable im aktuellen Script nur vorübergehend benötigt wird.

Notiz

Verwenden Sie keine lokale Variable, wenn Sie möchten, dass die Variable für die Verwendung in anderen Teilen Ihres Projekts erhalten bleibt. Für die Verwendung außerhalb des aktuellen Script verwenden Sie eine globale Variable oder Projektvariable.

Erstellen einer lokalen Variable

Da eine lokale Variable keinen Wert haben kann, bevor sie definiert wird, müssen Sie sie vor ihrer Verwendung definieren.

Im System erkennt man eine lokale Variable am Fehlen des Dollarzeichens „\(“, das normalerweise dem Namen einer globalen Variable vorangestellt ist. Da das „\)“ fehlt, wird eine lokale Variable nicht global „gesehen“. Während ein globales Datenelement verwendet werden kann, um einen Wert zwischen verschiedenen Scripts zu übergeben, ist die lokale Variable für das System nach der Ausführung des Script, das sie verwendet, nicht mehr sichtbar.

Um eine lokale Variable zu setzen und zu verwenden, lassen Sie einfach das '$' weg. Eine lokale Variable kann nicht gesetzt oder abgerufen werden mit Set Und Get Funktionen.

Variablennamen

Variablennamen können aus folgenden Zeichen bestehen: Buchstaben (a-z, A-Z), Zahlen (0-9) und Unterstrich. Andere Zeichen sind nicht zulässig und können Probleme verursachen. (Beachten Sie, dass bei lokalen Variablen der Punkt nicht zulässig ist.)

Beispiele

In diesem Beispiel now ist eine lokale Variable und steht nur in diesem Script zur Verfügung (also vor dem beendenden </trans> Tag). Im Gegensatz dazu $tomorrow ist eine globale Variable, die bis zum Ende der aktuellen Operation verfügbar ist:

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

Dieses Beispiel ruft den Wert eines Knotens ab. Wenn dieser Wert null ist, wird er auf die Zeichenfolge „Nicht festgelegt“ 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 den Wert 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>