JavaScript Jitterbit und allgemeine Funktionen im Studio
Jitterbit-JavaScripts können zusätzlich zu den Standard-JavaScript-Funktionen, die Teil von ECMA-262 v5.1 sind, auf diese Jitterbit-spezifischen Funktionen zugreifen. Da ECMA-262 v5.1 eine ältere Version von JavaScript ist als die, die üblicherweise in Browsern und anderen JavaScript-Engines verfügbar ist, haben wir Tabellen der allgemeinen und standardmäßigen JavaScript-Funktionen aufgenommen, die in Jitterbit-JavaScripts verfügbar sind.
Wichtig
Für eine verbesserte Leistung empfehlen wir, JavaScript nur zu verwenden, wenn ein Jitterbit-Skript Äquivalent nicht verfügbar ist.
Hinweis
Eine maximale Anzahl von 50.000 Schleifeniterationen ist für jedes JavaScript-Skript erlaubt. Um die erlaubte Anzahl von Iterationen pro Skript zu erhöhen, siehe Schleifeniterationen unter JavaScript.
Jitterbit-Funktionen
Jitterbit.DbExecute
Deklaration
array Jitterbit.DbExecute(string databaseId, string sql)
int Jitterbit.DbExecute(string databaseId, string sql, string outputVariable,...)
Syntax
Jitterbit.DbExecute(<databaseId>, <sql>)
Jitterbit.DbExecute(<databaseId>, <sql>, <outputVariable>,...])
Erforderliche Parameter
databaseId: Ein String-Verweis auf eine Datenbankverbindung im aktuellen Projektsql: Der SQL-Befehl, der gegen die Datenbank ausgeführt werden solloutputVariable: (Zweite Form) Ein Ausgabewert, der mit den in dem SQL-Befehl zurückgegebenen Feldern übereinstimmt. Zusätzliche Argumente können nach Bedarf angegeben werden.
Beschreibung
Führt eine SQL-Anweisung auf einer Datenbank aus und gibt die Ergebnisse zurück. Siehe die Jitterbit-Skriptfunktion DBExecute für weitere Details.
Die in diesem Funktionsaufruf verwendete Datenbank muss als Datenbankverbindung im aktuellen Projekt definiert sein. Weitere Informationen finden Sie in den Anweisungen zum Einfügen von Endpunkten unter Endpunkte in JavaScript.
Jitterbit.DbLookup
Deklaration
string Jitterbit.DbLookup(string databaseId, string sql)
Syntax
Jitterbit.DbLookup(<databaseId>, <sql>)
Erforderliche Parameter
databaseId: Ein String-Verweis auf einen Datenbankverbindung im aktuellen Projektsql: Der SQL-Befehl, der gegen die Datenbank ausgeführt werden soll
Beschreibung
Führt eine SQL-Anweisung auf einer Datenbank aus und gibt das erste Feld des ersten Ergebnisses zurück, das den angegebenen Kriterien entspricht. Weitere Informationen finden Sie in der Jitterbit-Skriptfunktion DBLookup.
Die in diesem Funktionsaufruf verwendete Datenbank muss als Datenbankverbindung im aktuellen Projekt definiert sein. Weitere Informationen finden Sie in den Anweisungen zum Einfügen von Endpunkten unter Endpunkte in JavaScript.
Jitterbit.GetVar
Deklaration
string Jitterbit.GetVar(string jitterbitVariableName)
Syntax
Jitterbit.GetVar(<jitterbitVariableName>)
Erforderliche Parameter
jitterbitVariableName: Der Name einer Jitterbit-Variablen
Beschreibung
Gibt den Wert einer Jitterbit-Variablen zurück (eine vordefinierte globale Variable, die im Agenten integriert ist und mit jitterbit. beginnt). Die verfügbaren Variablen sind im Studio sichtbar und werden unter Jitterbit-Variablen dokumentiert.
Warnung
Es ist auch möglich, aber nicht empfohlen, die Funktion Jitterbit.GetVar zu verwenden, um den Wert einer benutzerdefinierten globalen Variablen abzurufen.
Die Funktion Jitterbit.GetVar ist so konzipiert, dass sie die Verwendung von Variablen ermöglicht, die Punkte im Variablennamen enthalten. Die Verwendung von Punkten in einem benutzerdefinierten globalen Variablennamen wird jedoch nicht empfohlen. Da der Wert in einen String umgewandelt wird, wenn die Variable gesetzt wird, können diese Funktionen nicht mit komplexen Datentypen wie Arrays, Dictionaries oder JSON-Objekten verwendet werden. Stattdessen wird empfohlen, globale Variablen ohne Punkte zu erstellen und stattdessen Unterstriche anstelle von Punkten zu verwenden und die standardmäßige Dollarzeichen-$-Syntax zu verwenden, wie in Globalen Variablen beschrieben.
Beispiele
// Retrieves the value of the Jitterbit variable "jitterbit.api.request"
var request = Jitterbit.GetVar("$jitterbit.api.request");
Jitterbit.ReadFile
Declaration
string Jitterbit.ReadFile(string sourceId[, string fileFilter])
Syntax
Jitterbit.ReadFile(<sourceId>[, <fileFilter>])
Required parameters
sourceId: Ein String-Verweis auf einen Pfad zu einer Aktivität, die mit einem Dateityp-Endpunkt im aktuellen Projekt verbunden ist
Optional parameters
fileFilter: Dateifilter oder Dateiname, um die Aktivitätskonfiguration zu überschreiben
Description
Liest den Inhalt einer Datei aus einer Quelle.
Die in diesem Funktionsaufruf verwendete Quelle muss als Aktivität definiert sein, die mit einem Dateityp-Endpunkt im aktuellen Projekt verbunden ist. Dazu gehören konfigurierte File Share-, FTP-, HTTP-, Local Storage- und Temporary Storage-Aktivitäten. Weitere Informationen finden Sie in den Anweisungen zum Einfügen von Endpunkten unter Endpunkten in JavaScript.
Die Methode gibt den Inhalt der Datei zurück, auf die die Quelle verweist. Wenn der Quellfilter mehr als eine Datei auswählt, wird die erste verwendet. Es wird empfohlen, eine Quelle anzugeben, die eine einzelne Datei eindeutig identifiziert.
Der Parameter fileFilter ist optional und kann verwendet werden, um den in der Aktivitätskonfiguration verwendeten Dateifilter zu überschreiben. Ein Dateiname kann verwendet werden. Alternativ kann eine globale Variable verwendet werden, um den Dateifilter in der Aktivitätskonfiguration zu überschreiben. Globale Variablen werden in der Aktivitätskonfiguration als [de_name] referenziert.
Wenn die Funktion ReadFile fehlschlägt, schlägt die Operation nicht fehl. Ein Skript wird abgebrochen, eine Warnung wird zum Betriebsprotokoll hinzugefügt, und die Operation wird fortgesetzt.
Diese Methode kann verwendet werden, um Daten aus einer HTTP-Quelle zu lesen. In diesem Fall werden alle Jitterbit $jitterbit.source.http.* Variablen befüllt.
Warnung
Diese Funktion funktioniert nicht zuverlässig mit Dateien, die binäre Inhalte haben, da sie normalerweise nur einen Teil der Datei liest. Wenn die Datei binäre Inhalte hat, verwenden Sie stattdessen die Jitterbit-Skriptfunktion Base64EncodeFile, um den gesamten Dateiinhalte zu lesen.
Beispiele
// Reads the first file retrieved from a source
var fileContents = Jitterbit.ReadFile("<TAG>activity:ftp/FTP Endpoint/ftp_read/FTP Files</TAG>");
// Use the filename "test.txt" instead of what is defined in the source
var fileContents = Jitterbit.ReadFile("<TAG>activity:ftp/FTP Endpoint/ftp_read/FTP Files</TAG>", "test.txt");
Jitterbit.SetVar
Deklaration
Jitterbit.SetVar(string jitterbitVariableName, string value)
Syntax
Jitterbit.SetVar(<jitterbitVariableName>, <value>)
Erforderliche Parameter
jitterbitVariableName: Der Name einer Jitterbit-Variablevalue: Ein Wert, der der Variablen zugewiesen werden soll
Beschreibung
Setzt den Wert einer Jitterbit-Variable (einer vordefinierten globalen Variable, die im Agenten integriert ist und mit jitterbit. beginnt). Die verfügbaren Variablen können im Studio eingesehen werden und sind unter Jitterbit-Variablen dokumentiert.
Warnung
Es ist auch möglich, aber nicht empfohlen, die Funktion Jitterbit.SetVar zu verwenden, um den Wert einer benutzerdefinierten globalen Variablen festzulegen.
Die Funktion Jitterbit.SetVar ist so konzipiert, dass sie die Verwendung von Variablen ermöglicht, die Punkte im Variablennamen enthalten. Die Verwendung von Punkten in einem benutzerdefinierten globalen Variablennamen wird jedoch nicht empfohlen. Da der Wert in einen String umgewandelt wird, wenn die Variable festgelegt wird, können diese Funktionen nicht mit komplexen Datentypen wie Arrays, Dictionaries oder JSON-Objekten verwendet werden. Stattdessen wird empfohlen, globale Variablen ohne Punkte zu erstellen und stattdessen Unterstriche anstelle von Punkten zu verwenden und die standardmäßige Dollarzeichen-$-Syntax zu verwenden, wie in Globalen Variablen beschrieben.
Beispiele
// Sets a Jitterbit variable
Jitterbit.SetVar("$jitterbit.scripting.db.max_rows", 1000);
Jitterbit.WriteFile
Declaration
void Jitterbit.WriteFile(string targetId, type fileContents[, string filename])
Syntax
Jitterbit.WriteFile(<targetId>, <fileContents>[, <filename>])
Required parameters
targetId: Ein String-Verweis auf einen Pfad zu einer Aktivität, die mit einem Dateityp-Endpunkt im aktuellen Projekt verbunden ist
Optional parameters
fileContents: Daten, die in die Datei geschrieben werden sollenfilename: Dateiname, um die Aktivitätskonfiguration zu überschreiben
Description
Schreibt die fileContents in das durch targetId angegebene Ziel. Wenn fileContents vom Typ binär ist, werden die binären Daten in die Datei geschrieben. In allen anderen Fällen wird eine String-Darstellung der Daten geschrieben. Die Datei wird automatisch von der Funktion geleert und geschlossen.
Das in diesem Funktionsaufruf verwendete Ziel muss als Aktivität definiert sein, die mit einem Dateityp-Endpunkt im aktuellen Projekt verbunden ist. Dazu gehören konfigurierte File Share-, FTP-, HTTP-, Local Storage- und Temporary Storage-Aktivitäten. Weitere Informationen finden Sie in den Anweisungen zum Einfügen von Endpunkten unter Endpunkten in JavaScript.
Der dritte Parameter, filename, ist optional und kann verwendet werden, um den in der Aktivitätskonfiguration verwendeten Dateinamen zu überschreiben. Alternativ kann eine globale Variable verwendet werden, um den Dateinamen in der Aktivitätskonfiguration zu überschreiben. Globale Variablen werden in der Aktivitätskonfiguration als [de_name] referenziert.
Diese Methode kann auch verwendet werden, um Daten an ein HTTP-Ziel zu schreiben/zu posten. In diesem Fall werden die Variablen $jitterbit.target.http.* befüllt.
Wenn die Funktion WriteFile() fehlschlägt, schlägt die Operation nicht fehl. Ein Skript wird abgebrochen, eine Warnung wird zum Betriebsprotokoll hinzugefügt, und die Operation wird fortgesetzt.
Beispiele
// Writes the value of $contents to the file defined by a target
Jitterbit.WriteFile("<TAG>activity:ftp/FTP Endpoint/ftp_write/FTP Files</TAG>", $contents);
// Use the filename "test.txt" instead of what is defined in the target
Jitterbit.WriteFile("<TAG>activity:ftp/FTP Endpoint/ftp_write/FTP Files</TAG>", $contents, "test.txt");
SetScriptOutput
Deklaration
void SetScriptOutput(string data)
Syntax
SetScriptOutput(<data>)
Erforderliche Parameter
data: Daten, die vom Skript zurückgegeben werden sollen
Beschreibung
Setzt den Wert, der von einem Skript zurückgegeben wird.
Der Rückgabewert eines Skripts kann als Rückgabewert der Funktion RunScript zugegriffen werden.
Beispiele
// In the calling Jitterbit Script script:
$result = RunScript("<TAG>script:CalculateSomething</TAG>", value_to_be_calculated);
// In the Jitterbit JavaScript script "CalculateSomething":
var calculated_value = ...;
...
SetScriptOutput(calculated_value);
SetScriptResult
Deklaration
void SetScriptResult(string data)
Syntax
SetScriptResult(<data>)
Erforderliche Parameter
data: Daten, die vom Skript zurückgegeben werden sollen
Beschreibung
Ein Alias für die Funktion SetScriptOutput. Siehe SetScriptOutput für Details.
WriteToOperationLog
Deklaration
string WriteToOperationLog(string message)
Syntax
WriteToOperationLog(<message>)
Erforderliche Parameter
message: Eine Zeichenfolgen-Nachricht
Beschreibung
Schreibt eine Nachricht in das Betriebsprotokoll.
Beispiele
// Schreibt eine Nachricht in das Betriebsprotokoll
WriteToOperationLog("Das Quellfeld 'Preis' hat einen ungültigen Wert.");
JavaScript allgemeine Funktionen
Diese allgemeinen JavaScript-Funktionen – Teil von ECMA-262 v5.1 – werden in Jitterbit-JavaScripts unterstützt.
| Allgemeine Eigenschaft | Beschreibung |
|---|---|
Array |
Siehe die JavaScript-Array-Eigenschaften und -Funktionen |
Date |
Siehe die JavaScript-Datums-Eigenschaften und -Funktionen |
decodeURI |
Dekodiert eine URI |
decodeURIComponent |
Dekodiert eine URI-Komponente |
encodeURI |
Kodiert eine URI |
encodeURIComponent |
Kodiert eine URI-Komponente |
eval |
Bewertet eine Zeichenfolge und führt sie aus, als ob sie JavaScript-Code wäre |
isFinite |
Testet, ob ein Wert eine endliche und legale Zahl ist |
isNaN |
Testet, ob ein Wert eine illegale Zahl ist |
JSON.parse |
Analysiert eine JSON-Zeichenfolge und gibt ein JavaScript-Objekt zurück |
JSON.stringify |
Konvertiert ein JavaScript-Objekt in eine JSON-Zeichenfolge |
Math |
Siehe die JavaScript-Mathematik-Eigenschaften und -Funktionen |
Number |
Konvertiert den Wert eines Objekts in eine Zahl |
parseFloat |
Analysiert eine Zeichenfolge und gibt eine Fließkommazahl zurück |
parseInt |
Analysiert eine Zeichenfolge und gibt eine ganze Zahl zurück |
String |
Siehe die JavaScript-Zeichenfolgen-Eigenschaften und -Funktionen |