Fonctions du transformateur de données

Cette page décrit l'ensemble supplémentaire de fonctions Jsonnet prédéfinies pour la tâche Script de transformation de données disponible dans Application Integration.

Pour utiliser les fonctions prédéfinies suivantes, vous devez importer la bibliothèque functions dans votre script. L'importation de la bibliothèque functions vous permet d'utiliser à la fois les fonctions Jsonnet standards et les fonctions prédéfinies du Transformateur de données.

Application Integration est compatible avec la bibliothèque de fonctions Jsonnet v0.20.0. Pour en savoir plus sur les fonctions standards de Jsonnet, consultez la bibliothèque standard Jsonnet.

Fonctions de tableau


Average

Syntaxe

avg(arr)
      
Description Calcule la moyenne numérique de toutes les valeurs d'un tableau.
Paramètre d'entrée arr : tableau d'entrée.
Type renvoyé DOUBLE
Sortie Renvoie la moyenne de toutes les valeurs du tableau.

Contains

Syntaxe

contains(arr, elem)
      
Description Vérifie l'occurrence de l'élément spécifié dans un tableau.
Paramètre d'entrée arr : tableau d'entrée.

elem : élément du tableau à rechercher.

Type renvoyé BOOLEAN
Sortie Renvoie TRUE si une correspondance est trouvée et FALSE dans le cas contraire.

Max Array

Syntaxe

maxArray(arr)
      
Description Trouve la valeur la plus élevée d'un tableau.
Paramètre d'entrée arr : tableau d'entrée.
Type renvoyé Type de données du tableau d'entrée.
Sortie Renvoie la valeur la plus élevée trouvée dans le tableau.

Min Array

Syntaxe

minArray(arr)
      
Description Recherche la valeur la plus faible d'un tableau.
Paramètre d'entrée arr : tableau d'entrée.
Type renvoyé Type de données du tableau d'entrée.
Sortie/th> Renvoie la valeur la plus faible trouvée dans le tableau.

Remove

Syntaxe

remove(arr, elem)
      
Description Supprime l'élément spécifié d'un tableau.
Paramètre d'entrée arr : tableau d'entrée.

elem : élément du tableau à supprimer.

Type renvoyé Type de données du tableau d'entrée.
Sortie Renvoie le tableau mis à jour après la suppression de l'élément spécifié.

Remove At

Syntaxe

removeAt(arr, index)
      
Description Supprime un élément d'un tableau à l'index spécifié.
Paramètre d'entrée arr : tableau d'entrée.

index : index du tableau de l'élément à supprimer.

Type renvoyé Type de données du tableau d'entrée.
Sortie Renvoie le tableau mis à jour après la suppression de l'élément spécifié.

Sum

Syntaxe

sum(arr)
      
Description Ajoute toutes les valeurs dans un tableau.
Paramètre d'entrée arr : tableau d'entrée.
Type renvoyé Type de données du tableau d'entrée.
Sortie Renvoie la somme de tous les éléments du tableau.

GroupBy

Syntaxe

groupBy(array, function)
      
Description Crée un objet composé de clés générées à partir des résultats de l'exécution de chaque élément du tableau via la fonction d'itération. Par exemple, f.groupBy([1,1.3,1.8],std.floor) générerait {"1": [1,1.3,1.8]}.
Paramètre d'entrée
  • array : collection sur laquelle la méthode effectue des itérations.

    function : fonction appelée pour chaque élément du tableau.

Type renvoyé JSON
Sortie Renvoie l'objet agrégé composé.

Zip

Syntaxe

zip([arrays])
      
Description Crée un tableau d'éléments groupés, dont le premier contient les premiers éléments des tableaux donnés, le deuxième contient le deuxième élément des tableaux donnés, et ainsi de suite. Par exemple, f.zip([[1, "one", "I"],[2, "two", "II"],[3, "three", "III"]]) générerait [[1,2,3],["one", "two", "three"],["I", "II", "III"]].
Paramètre d'entrée [arrays] : ce paramètre contient les tableaux à traiter.
Type renvoyé array
Sortie Renvoie le nouveau tableau d'éléments groupés.

Unzip

Syntaxe

unzip(array)
      
Description Crée un tableau d'éléments groupés. Accepte un tableau d'éléments groupés et crée également un tableau regroupant les éléments selon leur configuration pré-zip. Par exemple, f.unzip([[1, "one", "I"],[2, "two", "II"],[3, "three", "III"]]) générerait [[1,2,3],["one", "two", "three"],["I", "II", "III"]].
Paramètre d'entrée array : ce paramètre contient le tableau d'éléments groupés à traiter.
Type renvoyé array
Sortie Renvoie le nouveau tableau d'éléments groupés.

Fonctions d'agrégation


XNOR

Syntaxe

xnor(a, b)
      
Description Effectue une opération logique XNOR sur les valeurs booléennes spécifiées.
Paramètre d'entrée a: : valeur booléenne.

b: : valeur booléenne.

Type renvoyé BOOLEAN
Sortie Renvoie la valeur XNOR des deux valeurs booléennes données.

Xor

Syntaxe

xor(a, b)
      
Description Effectue une opération logique XOR sur les valeurs booléennes spécifiées.
Paramètre d'entrée a: : valeur booléenne.

b: : valeur booléenne.

Type renvoyé BOOLEAN
Sortie Renvoie la valeur XOR des deux valeurs booléennes données.

Fonctions de hachage


SHA1

Syntaxe

sha1(str)
      
Description Calcule le hachage cryptographique de l'entrée STRING à l'aide de l'algorithme Secure Hash Algorithm 1 (SHA-1).
Paramètre d'entrée str: : chaîne d'entrée.
Type renvoyé BYTES
Sortie Renvoie une valeur de hachage de 160 bits (20 octets).

SHA256

Syntaxe

sha256(str)
      
Description Calcule le hachage cryptographique de l'entrée STRING à l'aide de l'algorithme Secure Hash Algorithm 256 (SHA-256).
Paramètre d'entrée str: : chaîne d'entrée.
Type renvoyé BYTES
Sortie Renvoie une valeur de hachage de 256 bits (32 octets).

SHA512

Syntaxe

sha512(str)
      
Description Calcule le hachage cryptographique de l'entrée STRING à l'aide de l'algorithme Secure Hash Algorithm 512 (SHA-512).
Paramètre d'entrée str: : chaîne d'entrée.
Type renvoyé BYTES
Sortie Renvoie une valeur de hachage de 512 bits (64 octets).

SHA3

Syntaxe

sha3(str)
      
Description Calcule le hachage cryptographique de l'entrée STRING à l'aide de l'algorithme Secure Hash Algorithm 3 (SHA-3).
Paramètre d'entrée str: : chaîne d'entrée.
Type renvoyé BYTES
Sortie Renvoie une valeur de hachage de 512 bits (64 octets).

Fonctions JSON


Manifest XML

Syntaxe

manifestXml(json, format = "badgerfish", indent_output = false)
      
Description Convertit l'objet JSON d'entrée spécifié en chaîne XML.
Paramètre d'entrée json: : objet JSON d'entrée.

format : format de représentation JSON d'entrée.

indent_output: : entrée booléenne indiquant si la chaîne XML de sortie doit être en retrait. La valeur par défaut est False.

Type renvoyé STRING
Sortie Renvoie la chaîne XML de la représentation d'objet JSON fournie.

Object Remove Key

Syntaxe

objectRemoveKey(obj, key)
      
Description Supprime une propriété d'un objet JSON.
Paramètre d'entrée obj: : objet JSON d'entrée.

key : propriété JSON à supprimer.

Type renvoyé JSON
Sortie Objet JSON mis à jour après la suppression de la propriété spécifiée et de la valeur correspondante.

Parse XML

Syntaxe

parseXml(xml, format = "badgerfish")
      
Description Analyse la chaîne XML d'entrée spécifiée dans un objet JSON.
Paramètre d'entrée xml: : chaîne XML d'entrée.

format : format de représentation JSON de sortie.

Type renvoyé JSON
Sortie Renvoie la représentation de l'objet JSON de la chaîne XML fournie.

Parse CSV With Header

Syntaxe

parseCsvWithHeader(input, delimiter = ",", overwrite_duplicate_headers = true)
      
Description Analyse la chaîne CSV d'entrée donnée au format JSON. La première ligne sera considérée comme un en-tête. Par exemple, f.parseCsvWithHeader("index,product,company\n1,Application Integration,Google\n2,Pubsub,Google") générerait [{"index": "1", "product": "Application Integration", "company": "Google"},{"index": "2", "product": "Pubsub", "company": "Google"}].
Paramètre d'entrée input : chaîne CSV à analyser.

delimiter : chaîne de délimiteur à utiliser. La valeur par défaut est ",".

overwrite_duplicate_headers: : option permettant d'écraser les valeurs des en-têtes en double. Si la valeur est "false", l'en-tête en double est renommé. La valeur par défaut est true.

Type renvoyé JSON
Sortie Renvoie la représentation JSON d'une chaîne CSV donnée.

Manifest CSV

Syntaxe

manifestCsv(json, headers = null)
      
Description Convertit le JSON donné en chaîne CSV. Par exemple, f.manifestCsv([{"index": "1", "product": "Application Integration", "company": "Google"},{"index": "2", "product": "Pubsub", "company": "Google"}]) générerait index,product,company\n1,Application Integration,Google\n2,Pubsub,Google.
Paramètre d'entrée json: : fichier JSON à convertir au format CSV.

headers: : liste d'en-têtes pour la sortie au format CSV. Si aucune valeur n'est fournie, tous les en-têtes sont utilisés.

Type renvoyé STRING
Sortie Renvoie la chaîne CSV à partir du JSON au format donné.

Fonctions mathématiques


Is Decimal

Syntaxe

isDecimal(num)
      
Description Vérifie si le nombre donné est une valeur décimale.
Paramètre d'entrée num: : numéro d'entrée.
Type renvoyé BOOLEAN
Sortie Renvoie TRUE si le nombre est décimal et FALSE dans le cas contraire.

Is Even

Syntaxe

isEven(num)
      
Description Vérifie si le nombre donné est pair.
Paramètre d'entrée num: : numéro d'entrée.
Type renvoyé BOOLEAN
Sortie Renvoie TRUE si le nombre est pair et FALSE dans le cas contraire.

Is Integer

Syntaxe

isInteger(num)
      
Description Vérifie si le nombre donné est un entier.
Paramètre d'entrée num: : numéro d'entrée.
Type renvoyé BOOLEAN
Sortie Renvoie TRUE si le nombre est un entier et FALSE dans le cas contraire.

Is Odd

Syntaxe

isOdd(num)
      
Description Vérifie si le nombre donné est impair.
Paramètre d'entrée num: : numéro d'entrée.
Type renvoyé BOOLEAN
Sortie Renvoie TRUE si le nombre est impair et FALSE dans le cas contraire.

Random Number

Syntaxe

randomNumber(lowerBound, upperBound)
      
Description Génère un nombre réel aléatoire entre une plage spécifiée.
Paramètre d'entrée lowerBound : valeur de la plage inférieure (incluse). La valeur par défaut est 0.

upperBound : valeur de plage supérieure (exclusive). La valeur par défaut est 1.

Type renvoyé Nombre réel.
Sortie Renvoie un nombre réel aléatoire compris entre lowerBound et upperBound.

Round

Syntaxe

round(input)
      
Description Arrondit un nombre à l'entier le plus proche.
Paramètre d'entrée input : valeur à arrondir.
Type renvoyé INTEGER
Valeur renvoyée Renvoie l'entier arrondi le plus proche.

Fonctions de chaîne


Equals Ignore Case

Syntaxe

equalsIgnoreCase(str1, str2)
      
Description Compare les deux valeurs de chaîne données, quelle que soit la casse (minuscules ou majuscules).
Paramètre d'entrée str1 : chaîne d'entrée.

str2 : chaîne d'entrée.

Type renvoyé BOOLEAN
Sortie Renvoie TRUE si la valeur spécifiée correspond à la valeur existante (en ignorant la casse) et FALSE dans le cas contraire.

Is Empty

Syntaxe

isEmpty(str)
      
Description Vérifie si la longueur de la chaîne donnée est égale à 0.
Paramètre d'entrée str: : chaîne d'entrée.
Type renvoyé BOOLEAN
Sortie Renvoie TRUE si la chaîne est vide et FALSE dans le cas contraire.

Match

Syntaxe

match(str, regexp)
      
Description Récupère le résultat de mise en correspondance d'une chaîne avec une expression régulière.
Paramètre d'entrée str: : chaîne d'entrée.

regexp : expression régulière re2.

Type renvoyé ARRAY
Sortie Renvoie un tableau contenant toutes les sous-chaînes de str qui correspondent à l'expression régulière (regexp). Renvoie un tableau vide s'il n'y a pas de correspondance.

Trim

Syntaxe

trim(str)
      
Description Supprime tous les espaces de début et de fin d'une chaîne donnée.
Paramètre d'entrée str: : chaîne d'entrée.
Type renvoyé STRING
Sortie Renvoie une copie de la chaîne, en supprimant les espaces de début et de fin.

Fonctions d'horodatage


Date Format

Syntaxe

dateFormat(timestamp, format_string, timezone, current_format)
      
Description Formate un horodatage en fonction de la chaîne de format format_string spécifiée.
Paramètre d'entrée timestamp : horodatage d'entrée.

format_string: : nouveau format d'horodatage. Consultez la section Éléments de format d'horodatage compatibles pour obtenir la liste des éléments de format pouvant être utilisés pour former la nouvelle chaîne de format d'horodatage.

timezone : fuseau horaire de l'horodatage d'entrée fourni. La valeur par défaut est UTC.

current_format: : format utilisé pour analyser l'horodatage d'entrée fourni. La valeur par défaut est E (epoch).

Type renvoyé STRING
Sortie Renvoie une nouvelle chaîne après la conversion de la valeur timestamp d'entrée en fonction de la valeur format_string spécifiée.

Éléments de format d'horodatage acceptés

Le tableau suivant répertorie les éléments de format acceptés pour la fonction dateFormat() :

Élément de format Description Exemple
YYYY Année (4 chiffres) 2023
YY Les deux derniers chiffres de l'année. 23
MMMM Nom du mois en majuscules. March
MMM Nom abrégé du mois en majuscules. Mar
MM Mois, de 01 à 12. 03
M Mois, de 1 à 12. 3
DDDD Nom du jour en majuscules. Monday
DDD Nom abrégé du jour. Mon
DD Jour, du 01 au 31 06
D Jour, du 1 au 31. 6
HH Heure au format 24 heures de 00 à 23. 15
hh Heure au format 12 heures, de 01 à 12. 03
h Heure au format 12 heures de 1 à 12. 3
mm Minutes, de 00 à 59. 04
m Minutes, de 0 à 59. 4
ss Secondes, de 00 à 59. 08
s Secondes, de 0 à 59. 8
FFFFFFFFF Fractions de secondes à neuf chiffres, y compris les zéros, à droite des chiffres spécifiés. 00.123456789
FFFFFFFF Fractions de secondes à huit chiffres, y compris les zéros, à droite des chiffres spécifiés. 00.12345678
FFFFFFF Fractions de secondes à sept chiffres, y compris les zéros, à droite des chiffres spécifiés. 00.1234567
FFFFFF Fractions de secondes à six chiffres, y compris les zéros, à droite des chiffres spécifiés. 00.123456
FFFFF Fractions de secondes à cinq chiffres, y compris les zéros, à droite des chiffres spécifiés. 00.12345
FFFF Fractions de secondes à quatre chiffres, y compris les zéros, à droite des chiffres spécifiés. 00.1234
FFF Fractions de secondes à trois chiffres, y compris les zéros, à droite des chiffres spécifiés. 00.123
FF Fractions de secondes à deux chiffres, y compris les zéros, à droite des chiffres spécifiés. 00.12
F Fractions de secondes à un chiffres, y compris les zéros, à droite des chiffres spécifiés. 00.1
fffffffff Fractions de secondes à neuf chiffres,. 987654321
ffffffff Fractions de secondes à huit chiffres. 98765432
fffffff Fractions de secondes à sept chiffres. 9876543
ffffff Fractions de secondes à six chiffres. 987654
fffff Fractions de secondes à cinq chiffres. 98765
ffff Fractions de secondes à quatre chiffres. 9876
fff Fractions de secondes à trois chiffres. 987
ff Fractions de secondes à deux chiffres. 98
f Fractions de secondes un chiffre. 9
tt Indicateur de méridien (matin ou soir). Lors du formatage, il s'agit de AM ou de PM. PM
t Indicateur de méridien court (matin ou soir). Correspond à am ou pm en minuscules. pm
K Nom du fuseau horaire PST
kk Fuseau horaire au format ±xx:xx. -8:00:00
k Fuseau horaire au format ±xxxx. -8000

Is Leap Year

Syntaxe

isLeapYear(year)
      
Description Vérifie si une année bissextile est une année bissextile.
Paramètre d'entrée year : année d'entrée (nombre réel)
Type renvoyé BOOLEAN
Sortie Renvoie TRUE si l'année est bissextile et FALSE dans le cas contraire.

Now In Millis

Syntaxe

nowInMillis()
      
Description Renvoie l'heure epoch Unix actuelle d'une intégration en millisecondes.
Paramètre d'entrée Non disponible
Type renvoyé INT64
Sortie Renvoie l'heure epoch Unix actuelle en millisecondes.

Fonctions utilitaires


UUID

Syntaxe

uuid()
      
Description Renvoie un identifiant unique universel (UUID) aléatoire sous forme de chaîne (STRING). La chaîne STRING renvoyée se compose de 32 chiffres hexadécimaux répartis dans cinq groupes séparés par des traits d'union, au format 8-4-4-4-12. Les chiffres hexadécimaux représentent 122 bits aléatoires et 6 bits fixes, conformément à la section 4.4 de la norme RFC 4122. La chaîne (STRING) renvoyée est en minuscules.
Paramètre d'entrée Non disponible
Type renvoyé STRING
Sortie Renvoie l'UUID généré au format de chaîne.

Integration name

Syntaxe

getIntegrationName()
      
Description Permet d'obtenir le nom de l'intégration actuelle.
Paramètre d'entrée Non disponible
Type renvoyé STRING
Sortie Renvoie le nom de l'intégration actuelle.

Integration region

Syntaxe

getIntegrationRegion()
      
Description Obtenir la région de l'intégration actuelle.
Paramètre d'entrée Non disponible
Type renvoyé STRING
Sortie Renvoie la région de l'intégration actuelle.

Integration version ID

Syntaxe

getIntegrationVersionId()
      
Description Obtenez l'ID de version d'intégration de l'intégration actuelle.
Paramètre d'entrée Non disponible
Type renvoyé STRING
Sortie Renvoie l'ID de version d'intégration de l'intégration actuelle.

Integration version number

Syntaxe

getIntegrationVersionNumber()
      
Description Récupère le numéro de version de l'intégration actuelle.
Paramètre d'entrée Non disponible
Type renvoyé NUMBER
Sortie Renvoie le numéro de version de l'intégration actuelle.

Execution ID

Syntaxe

getExecutionId()
      
Description Récupère l'ID d'exécution de l'intégration actuelle.
Paramètre d'entrée Non disponible
Type renvoyé STRING
Sortie Renvoie l'ID d'exécution de l'intégration en cours.

Project ID

Syntaxe

getProjectId()
      
Description Récupère l'ID de projet Google Cloud de l'intégration actuelle.
Paramètre d'entrée Non disponible
Type renvoyé STRING
Sortie Renvoie l'ID de projet Google Cloud de l'intégration actuelle.

Recommandation