Datentransformationsfunktionen

Auf dieser Seite werden zusätzliche vordefinierte Jsonnet-Funktionen für die Aufgabe Data Transformer Script beschrieben, die in Application Integration verfügbar ist.

Zur Verwendung der folgenden vordefinierten Funktionen müssen Sie die functions-Bibliothek in Ihr Skript importieren. Wenn Sie die functions-Bibliothek importieren, können Sie sowohl die Standard-Jsonnet-Funktionen als auch die vordefinierten Data Transformer-Funktionen verwenden.

Application Integration unterstützt die Jsonnet-Funktionsbibliothek v0.20.0. Informationen zu den Jsonnet-Standardfunktionen finden Sie unter Jsonnet-Standardbibliothek.

Arrayfunktionen


Average

Syntax

avg(arr)
      
Beschreibung Berechnet den numerischen Durchschnitt aller Werte in einem Array.
Eingabeparameter arr: Das Eingabearray.
Rückgabetyp DOUBLE
Ausgabe Gibt den Durchschnitt aller Werte im Array zurück.

Contains

Syntax

contains(arr, elem)
      
Beschreibung Prüft das Vorkommen des angegebenen Elements in einem Array.
Eingabeparameter arr: Das Eingabearray.

elem: Das zu durchsuchende Arrayelement.

Rückgabetyp BOOLEAN
Ausgabe Gibt TRUE zurück, wenn eine Übereinstimmung gefunden wird, und andernfalls FALSE.

Max Array

Syntax

maxArray(arr)
      
Beschreibung Ermittelt den höchsten Wert in einem Array.
Eingabeparameter arr: Das Eingabearray.
Rückgabetyp Der Datentyp des Eingabearrays.
Ausgabe Gibt den höchsten Wert zurück, der im Array gefunden wurde.

Min Array

Syntax

minArray(arr)
      
Beschreibung Ermittelt den niedrigsten Wert in einem Array.
Eingabeparameter arr: Das Eingabearray.
Rückgabetyp Der Datentyp des Eingabearrays.
Ausgabe/th> Gibt den niedrigsten Wert zurück, der im Array gefunden wurde.

Remove

Syntax

remove(arr, elem)
      
Beschreibung Entfernt das angegebene Element aus einem Array.
Eingabeparameter arr: Das Eingabearray.

elem: Das zu entfernende Arrayelement.

Rückgabetyp Der Datentyp des Eingabearrays.
Ausgabe Gibt das aktualisierte Array zurück, nachdem das angegebene Element entfernt wurde.

Remove At

Syntax

removeAt(arr, index)
      
Beschreibung Entfernt ein Element aus einem Array am angegebenen Index
Eingabeparameter arr: Das Eingabearray.

Index: Der Arrayindex des zu entfernenden Elements.

Rückgabetyp Der Datentyp des Eingabearrays.
Ausgabe Gibt das aktualisierte Array zurück, nachdem das angegebene Element entfernt wurde.

Sum

Syntax

sum(arr)
      
Beschreibung Addiert alle Werte in einem Array.
Eingabeparameter arr: Das Eingabearray.
Rückgabetyp Der Datentyp des Eingabearrays.
Ausgabe Gibt die Summe aller Elemente im Array zurück.

GroupBy

Syntax

groupBy(array, function)
      
Beschreibung Erstellt ein aus Schlüsseln bestehendes Objekt, die aus den Ergebnissen der Ausführung aller Array-Element über die Iterationsfunktion generiert werden. Zum Beispiel würde f.groupBy([1,1.3,1.8],std.floor) {"1": [1,1.3,1.8]} generieren.
Eingabeparameter
  • array:Die Sammlung, über die die Methode iteriert wird.

    Funktion: Die Funktion, die für jedes Element im Array aufgerufen wird.

Rückgabetyp JSON
Ausgabe Gibt das zusammengesetzte Aggregatobjekt zurück

Zip

Syntax

zip([arrays])
      
Beschreibung Sie erstellt ein Array mit gruppierten Elementen, von denen das erste die ersten Elemente der gegebenen Arrays enthält, das zweite das zweite Element der gegebenen Arrays usw. Zum Beispiel würde f.zip([[1, "one", "I"],[2, "two", "II"],[3, "three", "III"]]) [[1,2,3],["one", "two", "three"],["I", "II", "III"]] generieren.
Eingabeparameter [arrays]: Dieser Parameter enthält die zu verarbeitenden Arrays.
Rückgabetyp array
Ausgabe Gibt das neue Array der neu gruppierten Elemente zurück

Unzip

Syntax

unzip(array)
      
Beschreibung Sie erstellt ein Array gruppierter Elemente. Akzeptiert ein Array gruppierter Elemente und erstellt auch ein Array, in dem die Elemente ihrer Prä-ZIP-Konfiguration neu gruppiert werden. Zum Beispiel würde f.unzip([[1, "one", "I"],[2, "two", "II"],[3, "three", "III"]]) [[1,2,3],["one", "two", "three"],["I", "II", "III"]] generieren.
Eingabeparameter array: Dieser Parameter enthält das Array der gruppierten Elemente, die verarbeitet werden sollen.
Rückgabetyp array
Ausgabe Gibt das neue Array der neu gruppierten Elemente zurück

Aggregatfunktionen


XNOR

Syntax

xnor(a, b)
      
Beschreibung Führt einen logischen XNOR-Vorgang für die angegebenen booleschen Werte aus.
Eingabeparameter a: Ein boolescher Wert.

b: Ein boolescher Wert.

Rückgabetyp BOOLEAN
Ausgabe Gibt das XNOR der beiden angegebenen booleschen Werte zurück.

Xor

Syntax

xor(a, b)
      
Beschreibung Führt einen logischen XOR-Vorgang für die angegebenen booleschen Werte aus.
Eingabeparameter a: Ein boolescher Wert.

b: Ein boolescher Wert.

Rückgabetyp BOOLEAN
Ausgabe Gibt das XOR der beiden angegebenen booleschen Werte zurück.

Hash-Funktionen


SHA1

Syntax

sha1(str)
      
Beschreibung Berechnet den kryptografischen Hash des Eingabe-STRING mit dem Algorithmus Secure Hash Algorithm 1 (SHA-1).
Eingabeparameter str: Der Eingabestring.
Rückgabetyp BYTES
Ausgabe Gibt einen 160-Bit-Hash-Wert (20 Byte) zurück.

SHA256

Syntax

sha256(str)
      
Beschreibung Berechnet den kryptografischen Hash des Eingabe-STRING mit dem Algorithmus Secure Hash Algorithm 256 (SHA-256).
Eingabeparameter str: Der Eingabestring.
Rückgabetyp BYTES
Ausgabe Gibt einen Hashwert mit 256 Bit (32 Byte) zurück.

SHA512

Syntax

sha512(str)
      
Beschreibung Berechnet den kryptografischen Hash des Eingabe-STRING mit dem Algorithmus Secure Hash Algorithm 512 (SHA-512).
Eingabeparameter str: Der Eingabestring.
Rückgabetyp BYTES
Ausgabe Gibt einen 512-Bit-Hash-Wert (64 Byte) zurück.

SHA3

Syntax

sha3(str)
      
Beschreibung Berechnet den kryptografischen Hash des Eingabe-STRING mit dem Algorithmus Secure Hash Algorithm 3 (SHA-3).
Eingabeparameter str: Der Eingabestring.
Rückgabetyp BYTES
Ausgabe Gibt einen 512-Bit-Hash-Wert (64 Byte) zurück.

JSON-Funktionen


Manifest XML

Syntax

manifestXml(json, format = "badgerfish", indent_output = false)
      
Beschreibung Wandelt das angegebene JSON-Eingabeobjekt in einen XML-String um.
Eingabeparameter json:: Das JSON-Eingabeobjekt.

format: Das JSON-Eingabeformat für die Eingabe.

indent_output:: Boolesche Eingabe, die angibt, ob der XML-Ausgabestring eingerückt werden soll. Der Standardwert ist False.

Rückgabetyp STRING
Ausgabe Gibt den XML-String der bereitgestellten JSON-Objektdarstellung zurück.

Object Remove Key

Syntax

objectRemoveKey(obj, key)
      
Beschreibung Entfernt ein Attribut aus einem JSON-Objekt.
Eingabeparameter obj: Das JSON-Eingabeobjekt.

key: Das zu entfernende JSON-Attribut.

Rückgabetyp JSON
Ausgabe Das JSON-Objekt wurde aktualisiert, nachdem das angegebene Attribut und der entsprechende Wert entfernt wurden.

Parse XML

Syntax

parseXml(xml, format = "badgerfish")
      
Beschreibung Parst den angegebenen XML-Eingabestring in ein JSON-Objekt.
Eingabeparameter xml:: Der XML-Eingabestring.

format: Das JSON-Ausgabeformat für die Ausgabe.

Rückgabetyp JSON
Ausgabe Gibt die JSON-Objektdarstellung des bereitgestellten XML-Strings zurück.

Parse CSV With Header

Syntax

parseCsvWithHeader(input, delimiter = ",", overwrite_duplicate_headers = true)
      
Beschreibung Angegebenen CSV-Eingabestring als JSON parsen. Die erste Zeile wird als Überschrift betrachtet. Zum Beispiel würde f.parseCsvWithHeader("index,product,company\n1,Application Integration,Google\n2,Pubsub,Google") [{"index": "1", "product": "Application Integration", "company": "Google"},{"index": "2", "product": "Pubsub", "company": "Google"}] generieren.
Eingabeparameter Eingabe: Der zu parsende CSV-String.

Trennzeichen: Das zu verwendende Trennzeichen. Der Standardwert ist ",".

overwrite_duplicate_headers: Option zum Überschreiben von Werten für doppelte Header. Wenn diese Option auf "false" gesetzt ist, werden Header-Duplikate umbenannt. Der Standardwert ist true.

Rückgabetyp JSON
Ausgabe Gibt die JSON-Darstellung des angegebenen CSV-Strings zurück.

Manifest CSV

Syntax

manifestCsv(json, headers = null)
      
Beschreibung Konvertiert die angegebene JSON-Datei in einen CSV-String. Zum Beispiel würde f.manifestCsv([{"index": "1", "product": "Application Integration", "company": "Google"},{"index": "2", "product": "Pubsub", "company": "Google"}]) index,product,company\n1,Application Integration,Google\n2,Pubsub,Google generieren.
Eingabeparameter json:: JSON, das in CSV konvertiert werden soll.

headers: Headerliste für die CSV-Ausgabe. Wenn kein Wert angegeben ist, werden alle Header verwendet.

Rückgabetyp STRING
Ausgabe Gibt den CSV-String aus JSON in einem bestimmten Format zurück.

Mathematische Funktionen


Is Decimal

Syntax

isDecimal(num)
      
Beschreibung Prüft, ob die angegebene Zahl eine Dezimalzahl ist.
Eingabeparameter num: Die Eingabenummer.
Rückgabetyp BOOLEAN
Ausgabe Gibt TRUE zurück, wenn die Zahl eine Dezimalzahl ist, andernfalls FALSE.

Is Even

Syntax

isEven(num)
      
Beschreibung Prüft, ob die angegebene Zahl gerade ist.
Eingabeparameter num: Die Eingabenummer.
Rückgabetyp BOOLEAN
Ausgabe Gibt TRUE zurück, wenn die Zahl gerade ist, und andernfalls FALSE.

Is Integer

Syntax

isInteger(num)
      
Beschreibung Prüft, ob die angegebene Zahl eine Ganzzahl ist.
Eingabeparameter num: Die Eingabenummer.
Rückgabetyp BOOLEAN
Ausgabe Gibt TRUE zurück, wenn die Zahl eine Ganzzahl ist, andernfalls FALSE.

Is Odd

Syntax

isOdd(num)
      
Beschreibung Prüft, ob die angegebene Zahl ungerade ist.
Eingabeparameter num: Die Eingabenummer.
Rückgabetyp BOOLEAN
Ausgabe Gibt TRUE zurück, wenn die Zahl ungerade ist, und andernfalls FALSE.

Random Number

Syntax

randomNumber(lowerBound, upperBound)
      
Beschreibung Generiert eine zufällige reelle Zahl zwischen einem angegebenen Bereich.
Eingabeparameter lowerBound: Niedrigerer Bereichswert (einschließlich). Der Standardwert ist 0.

upperBound: Höherer Bereichswert (ausschließlich). Der Standardwert ist 1.

Rückgabetyp Eine reelle Zahl.
Ausgabe Gibt eine zufällige reelle Zahl zwischen lowerBound und upperBound zurück.

Round

Syntax

round(input)
      
Beschreibung Rundet eine Zahl auf die nächste Ganzzahl ab.
Eingabeparameter input: Ein Wert, der abgerundet werden soll.
Rückgabetyp INTEGER
Rückgabewert Gibt die nächste abgerundete Ganzzahl zurück.

Stringfunktionen


Equals Ignore Case

Syntax

equalsIgnoreCase(str1, str2)
      
Beschreibung Vergleichen Sie die beiden angegebenen Stringwerte, unabhängig von der Groß-/Kleinschreibung des Strings.
Eingabeparameter str1: Ein Eingabestring.

str2: Ein Eingabestring.

Rückgabetyp BOOLEAN
Ausgabe Gibt TRUE zurück, wenn der angegebene Wert mit dem vorhandenen Wert übereinstimmt (Groß-/Kleinschreibung wird ignoriert). Andernfalls wird FALSE zurückgegeben.

Is Empty

Syntax

isEmpty(str)
      
Beschreibung Überprüft, ob die Länge des angegebenen Strings 0 ist.
Eingabeparameter str: Der Eingabestring.
Rückgabetyp BOOLEAN
Ausgabe Gibt TRUE zurück, wenn der String leer ist, andernfalls FALSE.

Match

Syntax

match(str, regexp)
      
Beschreibung Ruft das Ergebnis des Abgleichs eines Strings mit einem regulären Ausdruck ab.
Eingabeparameter str: Der Eingabestring.

regexp: Der reguläre re2-Ausdruck.

Rückgabetyp ARRAY
Ausgabe Gibt ein Array aller Teilstrings von str zurück, die mit dem regulären Ausdruck regexp übereinstimmen. Gibt ein leeres Array zurück, wenn es keine Übereinstimmung gibt.

Trim

Syntax

trim(str)
      
Beschreibung Entfernt alle voran- und nachgestellten Leerzeichen eines bestimmten Strings.
Eingabeparameter str: Der Eingabestring.
Rückgabetyp STRING
Ausgabe Gibt eine Kopie des Strings zurück, wobei voran- und nachgestellte Leerzeichen entfernt wurden.

Zeitstempelfunktionen


Date Format

Syntax

dateFormat(timestamp, format_string, timezone, current_format)
      
Beschreibung Formatiert einen Zeitstempel gemäß dem angegebenen format_string-Wert.
Eingabeparameter timestamp: Der Eingabezeitstempel.

format_string: Das neue Zeitstempelformat. Unter Unterstützte Zeitstempelformatelemente finden Sie eine Liste der Formatelemente, die zum Erstellen des neuen Zeitstempelformatstrings verwendet werden können.

timezone: Die Zeitzone des bereitgestellten Eingabe-Zeitstempels. Der Standardwert ist UTC.

current_format: Das Format, das zum Parsen des bereitgestellten Eingabe-Zeitstempels verwendet wird. Der Standardwert ist E (Epoche).

Rückgabetyp STRING
Ausgabe Gibt nach der Konvertierung des Eingabe-timestamp basierend auf dem angegebenen format_string einen neuen String zurück.

Unterstützte Zeitstempelformatelemente

In der folgenden Tabelle sind die unterstützten Formatelemente für die Funktion dateFormat() aufgeführt:

Formatelement Beschreibung Beispiel
YYYY Jahr (4-stellig). 2023
YY Die letzten 2 Ziffern des Jahres. 23
MMMM Name des Monats im Titel. March
MMM Abgekürzter Name des Monats im Titel. Mar
MM Monat von 01 bis 12. 03
M Monat von 1 bis 12. 3
DDDD Name des Tages im Titel. Monday
DDD Abgekürzter Name des Tages. Mon
DD Tag von 01 bis 31. 06
D Tag von 1 bis 31. 6
HH Stunde im 24-Stunden-Format von 00 bis 23. 15
hh Stunde im 12-Stunden-Format von 01 bis 12. 03
h Stunde im 12-Stunden-Format von 1 bis 12. 3
mm Minute von 00 bis 59. 04
m Minute von 0 bis 59. 4
ss Sekunden von 00 bis 59. 08
s Sekunden von 0 bis 59. 8
FFFFFFFFF Sekundenbruchteile mit 9 Ziffern, einschließlich Nullen, rechts von den angegebenen Ziffern. 00.123456789
FFFFFFFF Sekundenbruchteile mit 8 Ziffern, einschließlich Nullen, rechts von den angegebenen Ziffern. 00.12345678
FFFFFFF Sekundenbruchteile mit 7 Ziffern, einschließlich Nullen, rechts von den angegebenen Ziffern. 00.1234567
FFFFFF Sekundenbruchteile mit 6 Ziffern, einschließlich Nullen, rechts von den angegebenen Ziffern. 00.123456
FFFFF Sekundenbruchteile mit 5 Ziffern, einschließlich Nullen, rechts von den angegebenen Ziffern. 00.12345
FFFF Sekundenbruchteile mit 4 Ziffern, einschließlich Nullen, rechts von den angegebenen Ziffern. 00.1234
FFF Sekundenbruchteile mit 3 Ziffern, einschließlich Nullen, rechts von den angegebenen Ziffern. 00.123
FF Sekundenbruchteile mit 2 Ziffern, einschließlich Nullen, rechts von den angegebenen Ziffern. 00.12
F Sekundenbruchteile mit 1 Ziffer, einschließlich Nullen, rechts von den angegebenen Ziffern. 00.1
fffffffff Sekundenbruchteil mit 9 Ziffern. 987654321
ffffffff Sekundenbruchteile mit 8 Ziffern. 98765432
fffffff Sekundenbruchteile mit 7 Ziffern. 9876543
ffffff Sekundenbruchteile mit 6 Ziffern. 987654
fffff Sekundenbruchteile mit 5 Ziffern. 98765
ffff Sekundenbruchteile mit 4 Ziffern. 9876
fff Sekundenbruchteile mit 3 Ziffern. 987
ff Sekundenbruchteile mit 2 Ziffern. 98
f Sekundenbruchteile mit 1 Ziffer. 9
tt Meridianindikator (morgens oder am Abend) Bei der Formatierung ist dies entweder AM oder PM. PM
t Kurzer Meridianindikator (morgens oder am Abend) Entspricht am oder pm in Kleinbuchstaben. pm
K Zeitzonenname. PST
kk Zeitzone im Format ±xx:xx. -8:00:00
k Zeitzone im Format ±xxxx. -8000

Is Leap Year

Syntax

isLeapYear(year)
      
Beschreibung Prüft, ob das angegebene Jahr ein Schaltjahr ist.
Eingabeparameter year: Das Eingabejahr (reelle Zahl).
Rückgabetyp BOOLEAN
Ausgabe Gibt TRUE zurück, wenn das Jahr ein Schaltjahr ist, andernfalls FALSE.

Now In Millis

Syntax

nowInMillis()
      
Beschreibung Gibt die aktuelle Unix-Epochen-Zeit der Integration in Millisekunden zurück.
Eingabeparameter
Rückgabetyp INT64
Ausgabe Gibt die aktuelle Unix-Epochen-Zeit in Millisekunden zurück.

Hilfsfunktionen


UUID

Syntax

uuid()
      
Beschreibung Erstellt einen zufälligen Universally Unique Identifier (UUID) als STRING. Der zurückgegebene STRING besteht aus 32 Hexadezimalziffern in fünf Gruppen, die durch Bindestriche im Format 8-4-4-4-12 voneinander getrennt sind. Die Hexadezimalziffern entsprechen 122 zufälligen Bit und 6 festen Bit gemäß RFC 4122 Abschnitt 4.4. Der STRING wird in Kleinbuchstaben zurückgegeben.
Eingabeparameter
Rückgabetyp STRING
Ausgabe Gibt die generierte UUID im Stringformat zurück.

Integration name

Syntax

getIntegrationName()
      
Beschreibung Rufen Sie den Namen der aktuellen Integration ab.
Eingabeparameter
Rückgabetyp STRING
Ausgabe Gibt den Namen der aktuellen Integration zurück.

Integration region

Syntax

getIntegrationRegion()
      
Beschreibung Rufen Sie die Region der aktuellen Integration ab.
Eingabeparameter
Rückgabetyp STRING
Ausgabe Gibt die Region der aktuellen Integration zurück.

Integration version ID

Syntax

getIntegrationVersionId()
      
Beschreibung Rufen Sie die Integrationsversions-ID der aktuellen Integration ab.
Eingabeparameter
Rückgabetyp STRING
Ausgabe Gibt die Integrationsversions-ID der aktuellen Integration zurück.

Integration version number

Syntax

getIntegrationVersionNumber()
      
Beschreibung Rufen Sie die Versionsnummer der aktuellen Integration ab.
Eingabeparameter
Rückgabetyp NUMBER
Ausgabe Gibt die Versionsnummer der aktuellen Integration zurück.

Execution ID

Syntax

getExecutionId()
      
Beschreibung Ruft die Ausführungs-ID der aktuellen Integrationsausführung ab.
Eingabeparameter
Rückgabetyp STRING
Ausgabe Gibt die Ausführungs-ID der aktuellen Integrationsausführung zurück.

Project ID

Syntax

getProjectId()
      
Beschreibung Rufen Sie die Google Cloud-Projekt-ID der aktuellen Integration ab.
Eingabeparameter
Rückgabetyp STRING
Ausgabe Gibt die Google Cloud-Projekt-ID der aktuellen Integration zurück.

Empfehlung