Partage via


Expressions et fonctions dans Azure Data Factory et Azure Synapse Analytics

S’APPLIQUE À : Azure Data Factory Azure Synapse Analytics

Conseil

Essayez Data Factory dans Microsoft Fabric, une solution d’analyse tout-en-un pour les entreprises. Microsoft Fabric couvre tous les aspects, du déplacement des données à la science des données, en passant par l’analyse en temps réel, l’aide à la décision et la création de rapports. Découvrez comment démarrer un nouvel essai gratuitement !

Cet article fournit des détails sur les expressions et fonctions prises en charge par Azure Data Factory et Azure Synapse Analytics.

Expressions

Les valeurs JSON indiquées dans la définition peuvent être littérales. Il peut également s’agir d’expressions évaluées lors de l’exécution du runtime. Par exemple :

"name": "value"

or

"name": "@pipeline().parameters.password"

Les expressions peuvent apparaître n’importe où dans une valeur de chaîne JSON, et entraînent toujours une autre valeur JSON. Si une valeur JSON est une expression, le corps de celle-ci est extrait en supprimant l’arobase (@). Si une chaîne littérale devant commencer par @ est nécessaire, elle doit être placée dans une séquence d’échappement en utilisant @@. Les exemples suivants montrent comment les expressions sont évaluées.

Valeur JSON Résultats
« parameters » Les caractères « parameters » sont retournés.
« parameters[1] » Les caractères « parameters[1] » sont retournés.
« @@ » Une chaîne de 1 caractère contenant \«\@\» est retournée.
« @ » Une chaîne de 2 caractères contenant \«  \@  \» est retournée.

Des expressions peuvent également apparaître dans des chaînes, qui utilisent une fonctionnalité appelée interpolation de chaîne où les expressions sont encapsulées dans @{ ... }. Par exemple : "name" : "First Name: @{pipeline().parameters.firstName} Last Name: @{pipeline().parameters.lastName}"

En utilisant une interpolation de chaîne, le résultat est toujours une chaîne. Supposons que j’ai défini myNumber sur 42 et myString sur foo :

Valeur JSON Résultats
"@pipeline().parameters.myString" Retourne foo en tant que chaîne.
"@{pipeline().parameters.myString}" Retourne foo en tant que chaîne.
"@pipeline().parameters.myNumber" Retourne 42 en tant que nombre.
"@{pipeline().parameters.myNumber}" Retourne 42 en tant que chaîne.
"Answer is: @{pipeline().parameters.myNumber}" Retourne la chaîne Answer is: 42.
"@concat('Answer is: ', string(pipeline().parameters.myNumber))" Retourne la chaîne Answer is: 42.
"Answer is: @@{pipeline().parameters.myNumber}" Retourne la chaîne Answer is: @{pipeline().parameters.myNumber}.

Dans les activités de flux de contrôle telles que l’activité ForEach, vous pouvez fournir un tableau à itérer pour les éléments de propriété et utiliser @item() pour itérer sur une énumération unique dans l’activité ForEach. Par exemple, si items est un tableau [1, 2, 3], @item() retourne 1 dans la première itération, 2 dans la deuxième, et 3 dans la troisième. Vous pouvez également utiliser @range(0,10) comme expression pour effectuer une itération dix fois commençant par 0 et se terminant par 9.

Vous pouvez utiliser @activity(« nom de l’activité ») pour capturer la sortie de l’activité et prendre des décisions. Prenons l’exemple d’une activité web appelée web1. Pour placer la sortie de la première activité dans le corps de la seconde, l’expression se présente généralement comme suit : @activity(« web1 »).output ou @activity(« web1 »).output.data ou un élément similaire en fonction de l’aspect de la sortie de la première activité.

Exemples

Exemple d’expression complexe

L’exemple ci-dessous montre un exemple complexe qui fait référence à un sous-champ profond d’une sortie d’activité. Pour faire référence à un paramètre de pipeline qui s’évalue à partir d’un sous-champ, utilisez la syntaxe [] au lieu de l’opérateur point(.) (comme dans le cas de sous-champ1 et sous-champ2), dans le cadre d’une sortie d’activité.

@activity('*activityName*').output.*subfield1*.*subfield2*[pipeline().parameters.*subfield3*].*subfield4*

Créer des fichiers de façon dynamique et leur attribuer des noms est un modèle commun. Explorons quelques exemples d’attributions de noms de fichiers dynamiques.

  1. Ajouter la date à un nom de fichier : @concat('Test_', formatDateTime(utcnow(), 'yyyy-dd-MM'))

  2. Ajouter DateHeure dans le fuseau horaire du client : @concat('Test_', convertFromUtc(utcnow(), 'Pacific Standard Time'))

  3. Ajouter l’heure du déclencheur Append : @concat('Test_', pipeline().TriggerTime)

  4. Générer un nom de fichier personnalisé dans un flux de données de mappage lors de la sortie vers un fichier unique avec la date : 'Test_' + toString(currentDate()) + '.csv'

Dans les cas ci-dessus, 4 noms de fichiers dynamiques sont créés à partir de Test_.

Éditeur de contenu dynamique

L’éditeur de contenu dynamique échappe automatiquement des caractères de votre contenu quand vous avez fini de l’éditer. Par exemple, le contenu suivant dans l’éditeur de contenu est une interpolation de chaîne avec deux fonctions d’expression.

{ 
  "type": "@{if(equals(1, 2), 'Blob', 'Table' )}",
  "name": "@{toUpper('myData')}"
}

L’éditeur de contenu dynamique convertit le contenu ci-dessus en expression "{ \n \"type\": \"@{if(equals(1, 2), 'Blob', 'Table' )}\",\n \"name\": \"@{toUpper('myData')}\"\n}". Le résultat de cette expression est une chaîne de format JSON illustrée ci-dessous.

{
  "type": "Table",
  "name": "MYDATA"
}

Un jeu de données avec un paramètre

Dans l’exemple suivant, BlobDataset prend un paramètre nommé path. Sa valeur est utilisée pour donner une valeur à la propriété folderPath à l’aide de l’expression : dataset().path.

{
    "name": "BlobDataset",
    "properties": {
        "type": "AzureBlob",
        "typeProperties": {
            "folderPath": "@dataset().path"
        },
        "linkedServiceName": {
            "referenceName": "AzureStorageLinkedService",
            "type": "LinkedServiceReference"
        },
        "parameters": {
            "path": {
                "type": "String"
            }
        }
    }
}

Un pipeline avec un paramètre

Dans l’exemple suivant, le pipeline prend les paramètres inputPath et outputPath. Le path du jeu de données blob paramétrable est défini par les valeurs de ces paramètres. Voici la syntaxe utilisée : pipeline().parameters.parametername.

{
    "name": "Adfv2QuickStartPipeline",
    "properties": {
        "activities": [
            {
                "name": "CopyFromBlobToBlob",
                "type": "Copy",
                "inputs": [
                    {
                        "referenceName": "BlobDataset",
                        "parameters": {
                            "path": "@pipeline().parameters.inputPath"
                        },
                        "type": "DatasetReference"
                    }
                ],
                "outputs": [
                    {
                        "referenceName": "BlobDataset",
                        "parameters": {
                            "path": "@pipeline().parameters.outputPath"
                        },
                        "type": "DatasetReference"
                    }
                ],
                "typeProperties": {
                    "source": {
                        "type": "BlobSource"
                    },
                    "sink": {
                        "type": "BlobSink"
                    }
                }
            }
        ],
        "parameters": {
            "inputPath": {
                "type": "String"
            },
            "outputPath": {
                "type": "String"
            }
        }
    }
}

Remplacement des caractères spéciaux

L’éditeur de contenu dynamique échappe automatiquement des caractères tels que les guillemets doubles et les barres obliques inversées dans votre contenu quand vous avez fini de l’éditer. Cela pose problème si vous souhaitez remplacer un saut de ligne ou une tabulation en utilisant \n, \t dans la fonction replace(). Vous pouvez modifier votre contenu dynamique en mode code pour supprimer le caractère \ supplémentaire dans l’expression, ou vous pouvez suivre les étapes ci-dessous pour remplacer les caractères spéciaux en utilisant le langage d’expression :

  1. Encodage d’URL par rapport à la valeur de chaîne d’origine
  2. Remplacez la chaîne encodée de l’URL, par exemple, le saut de ligne (%0A), le retour chariot (%0D) ou la tabulation horizontale (%09).
  3. Décodage d’URL

Par exemple, pour la variable companyName avec un caractère de nouvelle ligne dans sa valeur, l’expression @uriComponentToString(replace(uriComponent(variables('companyName')), '%0A', '')) peut supprimer le caractère de nouvelle ligne.

Contoso-
Corporation

Placement d’un caractère de guillemet simple dans une séquence d’échappement

Les fonctions d’expression dans des pipelines utilisent le guillemet simple (') pour entourer des paramètres de valeur de chaîne. Utilisez deux caractères de guillemet simple consécutifs au sein d’une expression de chaîne de pipeline pour inclure un guillemet simple. Voici un exemple : l’expression @concat('Here is a double quote character: ". ', 'And here is a single quote character all within the same string: ''.') renvoie le résultat suivant :

Here is a double quote character: ". And here is a single quote character all within the same string: '.

Toutefois, dans des expressions de flux de données, cette syntaxe n’est pas prise en charge. Les expressions de flux de données peuvent à la place être entourées de guillemets simples ou doubles. Entourez de guillemets doubles du texte nécessitant des guillemets simples et de guillemets simples du texte nécessitant des guillemets doubles dans des fonctions de chaîne. Si vous exigez une chaîne contenant des guillemets simples et doubles, vous pouvez utiliser concat() pour fusionner deux sous-chaînes qui contiennent chacune des guillemets simples ou des guillemets doubles. Le flux de données équivalent à l’exemple précédent d’expression de pipeline sera concat('Here is a double quote character: ". ', "And here is a single quote character all within the same string: '."). Dans un flux de données, cette expression renvoie le même résultat que l’exemple précédent pour les expressions de pipeline.

Didacticiel

Cela tutoriel vous montre comment transmettre des paramètres entre un pipeline et une activité et entre les activités. Ce tutoriel présente en particulier les étapes d’un Azure Data Factory, bien que les étapes d’un espace de travail Synapse soient presque équivalentes, mais avec une interface utilisateur légèrement différente.

Fonctions

Vous pouvez appeler des fonctions dans des expressions. Les sections suivantes fournissent des informations sur les fonctions qui peut être utilisées dans une expression.

Fonctions de date

Fonction de date ou heure Tâche
addDays Ajoute un nombre de jours à un horodatage.
addHours Ajoute un nombre d’heures à un horodatage.
addMinutes Ajoute un nombre de minutes à un horodatage.
addSeconds Ajoute un nombre de secondes à un horodatage.
addToTime Ajoute un nombre d’unités de temps à un horodatage. Voir aussi getFutureTime.
convertFromUtc Convertit un horodatage du temps universel coordonné (UTC) au fuseau horaire cible.
convertTimeZone Convertit un horodatage du fuseau horaire source au fuseau horaire cible.
convertToUtc Convertit un horodatage du fuseau horaire source en temps universel coordonné (UTC).
dayOfMonth Renvoyer le jour du composant mois d’un timestamp.
dayOfWeek Renvoyer le jour du composant semaine d’un timestamp.
dayOfYear Renvoyer le jour du composant année d’un timestamp.
formatDateTime Retourner l’horodatage sous forme de chaîne dans un format facultatif.
getFutureTime Retourne l’horodatage actuel plus les unités de temps spécifiées. Voir aussi addToTime.
getPastTime Retourne l’horodatage actuel moins les unités de temps spécifiées. Voir aussi subtractFromTime.
startOfDay Retourne le début du jour d’un horodatage.
startOfHour Retourne le début de l’heure d’un horodatage.
startOfMonth Retourne le début du mois pour un horodatage.
subtractFromTime Soustrait un nombre d’unités de temps d’un horodatage. Voir aussi getPastTime.
ticks Retourne la valeur de la propriété ticks pour un horodatage spécifique.
utcNow Renvoyer le timestamp actuel sous forme de chaîne.

Fonctions de chaînes

Pour travailler avec des chaînes, vous pouvez utiliser ces fonctions de chaîne, ainsi que certaines fonctions de collection. Les fonctions de chaîne sont uniquement utilisables sur des chaînes.

Fonction de chaîne Tâche
concat Combine au moins deux chaînes et retourne la chaîne combinée.
endsWith Vérifier si une chaîne se termine par la sous-chaîne spécifiée.
guid Générer un identificateur global unique (GUID) sous forme de chaîne.
indexOf Renvoyer la position de départ d’une sous-chaîne.
lastIndexOf Retourne la position de départ de la dernière occurrence d’une sous-chaîne.
replace Remplacer une sous-chaîne par la chaîne spécifiée et renvoyer la chaîne mise à jour.
split Divise une chaîne de caractères à chaque occurrence d'un délimiteur spécifié, en renvoyant les sous-chaînes résultantes sous forme d'éléments d'un tableau.
startsWith Vérifie si une chaîne commence par une sous-chaîne spécifique.
substring Renvoyer les caractères d’une chaîne, en commençant à partir de la position spécifiée.
toLower Retourne une chaîne en minuscules.
toUpper Retourne une chaîne en majuscules.
trim Supprime les espaces blancs de début et de fin d’une chaîne et retourne la chaîne mise à jour.

Fonctions de collection

Pour travailler avec des collections, généralement des tableaux, des chaînes et parfois, des dictionnaires, vous pouvez utiliser ces fonctions de collection.

Fonction de collection Tâche
contains Vérifie si une collection contient un élément spécifique.
empty Vérifie si une collection est vide.
first Renvoyer le premier élément d’une collection.
intersection Retourne une collection qui contient uniquement les éléments communs aux collections spécifiées.
join Renvoyer une chaîne qui contient tous les éléments d’un tableau, séparés par le caractère spécifié.
last Retourne le dernier élément d’une collection.
length Renvoyer le nombre d’éléments d’une chaîne ou d’un tableau.
skip Supprime des éléments du début d’une collection et retourne tous les autres éléments.
take Retourne des éléments du début d’une collection.
union Retourne une collection qui contient tous les éléments des collections spécifiées.

Fonctions logiques

Ces fonctions sont utiles à l’intérieur de conditions, et permettent d’évaluer tout type de logique.

Fonction de comparaison logique Tâche
and Vérifie si toutes les expressions sont vraies.
equals Vérifier si les deux valeurs sont équivalentes.
greater Vérifie si la première valeur est supérieure à la seconde.
greaterOrEquals Vérifie si la première valeur est supérieure ou égale à la seconde.
if Vérifie si une expression est vraie ou fausse. En fonction du résultat, retourne une valeur spécifiée.
less Vérifie si la première valeur est inférieure à la seconde.
lessOrEquals Vérifie si la première valeur est inférieure ou égale à la seconde.
not Vérifie si une expression est fausse.
or Vérifie si au moins une expression est vraie.

Fonctions de conversion

Ces fonctions permettent de convertir chacun des types natifs du langage :

  • string
  • entier
  • float
  • boolean
  • tableaux
  • dictionnaires
Fonction de conversion Tâche
array Retourne un tableau à partir d’une entrée spécifique unique. Pour des entrées multiples, consultez createArray.
base64 Retourne la version encodée en Base64 d’une chaîne.
base64ToBinary Retourne la version binaire d’une chaîne encodée en Base64.
base64ToString Renvoyer la version de type chaîne d’une chaîne encodée en base 64.
binary Renvoyer la version binaire d’une valeur d’entrée.
bool Renvoyer la version booléenne d’une valeur d’entrée.
coalesce Retourne la première valeur autre que Null d’un ou plusieurs paramètres.
createArray Retourne un tableau à partir de plusieurs entrées.
dataUri Renvoyer l’URI de données d’une valeur d’entrée.
dataUriToBinary Renvoyer la version binaire d’un URI de données.
dataUriToString Renvoyer la version de type chaîne d’un URI de données.
decodeBase64 Renvoyer la version de type chaîne d’une chaîne encodée en base 64.
decodeDataUri Renvoyer la version binaire d’un URI de données.
decodeUriComponent Retourne une chaîne qui remplace les caractères d’échappement par des versions décodées.
encodeUriComponent Renvoyer une chaîne qui remplace les caractères non sécurisés pour les URL par des caractères d'échappement.
float Renvoyer un nombre à virgule flottante pour une valeur d’entrée.
int Retourne la version de type entier d’une chaîne.
json Retourne la valeur ou l’objet de type JavaScript Object Notation (JSON) d’une chaîne ou d’un élément XML.
string Renvoyer la version de type chaîne d’une valeur d’entrée.
uriComponent Renvoyer la version encodée dans un URI d’une valeur d’entrée en remplaçant les caractères non sécurisés pour les URL par des caractères d’échappement.
uriComponentToBinary Renvoyer la version binaire d’une chaîne encodée dans un URI.
uriComponentToString Renvoyer la version de type chaîne d’une chaîne encodée dans un URI.
xml Renvoyer la version de type entier d’une chaîne.
xpath Vérifie si le code XML contient des valeurs ou des nœuds qui correspondent à une expression de langage XPath et retourne les valeurs ou les nœuds correspondants.

Fonctions mathématiques

Ces fonctions peuvent être utilisées pour les deux types de nombre : entiers et flottants.

Fonction mathématique Tâche
add Retourne le résultat de l’addition de deux nombres.
div Retourner le résultat de la division d’un nombre par un autre.
max Renvoyer la valeur la plus élevée d’un ensemble de nombres ou d’un tableau.
min Retourne la plus petite valeur d’un ensemble de nombres ou d’un tableau.
mod Retourner le reste de la division d’un nombre par un autre.
mul Retourne le produit de la multiplication de deux nombres.
rand Renvoyer un entier aléatoire à partir d’une plage spécifique.
range Retourne un tableau d’entiers qui commence par un entier spécifique.
sub Retourner le résultat de la soustraction d’un nombre d’un autre.

Référence des fonctions

Cette section répertorie toutes les fonctions disponibles par ordre alphabétique.

add

Retourne le résultat de l’addition de deux nombres.

add(<summand_1>, <summand_2>)
Paramètre Obligatoire Type Description
<summand_1>, <summand_2> Oui Entier, flottant ou mixte Nombres à ajouter
Valeur retournée Type Description
<result-sum> Entier ou flottant Résultat de l’addition des nombres spécifiés

Exemple

Cet exemple illustre l’addition des nombres spécifiés :

add(1, 1.5)

Et retourne ce résultat : 2.5

addDays

Ajoute un nombre de jours à un horodatage.

addDays('<timestamp>', <days>, '<format>'?)
Paramètre Obligatoire Type Description
<timestamp> Oui String Chaîne qui contient l’horodatage
<days> Oui Integer Nombre de jours positif ou négatif à ajouter
<format> Non String Spécificateur de format unique ou modèle de format personnalisé. Le format par défaut de l’horodatage est « o » (aaaa-MM-jjTHH:mm:ss.fffffffK), qui est conforme à la norme ISO 8601 et conserve les informations de fuseau horaire.
Valeur retournée Type Description
<updated-timestamp> String Horodatage plus le nombre de jours spécifié

Exemple 1

Cet exemple illustre l’ajout de 10 jours à l’horodatage spécifié :

addDays('2018-03-15T13:00:00Z', 10)

Et retourne ce résultat : "2018-03-25T00:00:0000000Z"

Exemple 2

Cet exemple illustre le retrait de cinq jours de l’horodatage spécifié :

addDays('2018-03-15T00:00:00Z', -5)

Et retourne ce résultat : "2018-03-10T00:00:0000000Z"

addHours

Ajoute un nombre d’heures à un horodatage.

addHours('<timestamp>', <hours>, '<format>'?)
Paramètre Obligatoire Type Description
<timestamp> Oui String Chaîne qui contient l’horodatage
<hours> Oui Integer Nombre d’heures positif ou négatif à ajouter
<format> Non String Spécificateur de format unique ou modèle de format personnalisé. Le format par défaut de l’horodatage est « o » (aaaa-MM-jjTHH:mm:ss.fffffffK), qui est conforme à la norme ISO 8601 et conserve les informations de fuseau horaire.
Valeur retournée Type Description
<updated-timestamp> String Horodatage plus le nombre d’heures spécifié

Exemple 1

Cet exemple illustre l’ajout de 10 heures à l’horodatage spécifié :

addHours('2018-03-15T00:00:00Z', 10)

Et retourne ce résultat : "2018-03-15T10:00:0000000Z"

Exemple 2

Cet exemple illustre le retrait de cinq heures de l’horodatage spécifié :

addHours('2018-03-15T15:00:00Z', -5)

Et retourne ce résultat : "2018-03-15T10:00:0000000Z"

addMinutes

Ajoute un nombre de minutes à un horodatage.

addMinutes('<timestamp>', <minutes>, '<format>'?)
Paramètre Obligatoire Type Description
<timestamp> Oui String Chaîne qui contient l’horodatage
<minutes> Oui Integer Nombre de minutes positif ou négatif à ajouter
<format> Non String Spécificateur de format unique ou modèle de format personnalisé. Le format par défaut de l’horodatage est « o » (aaaa-MM-jjTHH:mm:ss.fffffffK), qui est conforme à la norme ISO 8601 et conserve les informations de fuseau horaire.
Valeur retournée Type Description
<updated-timestamp> String Horodatage plus le nombre de minutes spécifié

Exemple 1

Cet exemple illustre l’ajout de 10 minutes à l’horodatage spécifié :

addMinutes('2018-03-15T00:10:00Z', 10)

Et retourne ce résultat : "2018-03-15T00:20:00.0000000Z"

Exemple 2

Cet exemple illustre le retrait de cinq minutes de l’horodatage spécifié :

addMinutes('2018-03-15T00:20:00Z', -5)

Et retourne ce résultat : "2018-03-15T00:15:00.0000000Z"

addSeconds

Ajoute un nombre de secondes à un horodatage.

addSeconds('<timestamp>', <seconds>, '<format>'?)
Paramètre Obligatoire Type Description
<timestamp> Oui String Chaîne qui contient l’horodatage
<seconds> Oui Integer Nombre de secondes positif ou négatif à ajouter
<format> Non String Spécificateur de format unique ou modèle de format personnalisé. Le format par défaut de l’horodatage est « o » (aaaa-MM-jjTHH:mm:ss.fffffffK), qui est conforme à la norme ISO 8601 et conserve les informations de fuseau horaire.
Valeur retournée Type Description
<updated-timestamp> String Horodatage plus le nombre de secondes spécifié

Exemple 1

Cet exemple illustre l’ajout de 10 secondes à l’horodatage spécifié :

addSeconds('2018-03-15T00:00:00Z', 10)

Et retourne ce résultat : "2018-03-15T00:00:10.0000000Z"

Exemple 2

Cet exemple illustre le retrait de cinq secondes de l’horodatage spécifié :

addSeconds('2018-03-15T00:00:30Z', -5)

Et retourne ce résultat : "2018-03-15T00:00:25.0000000Z"

addToTime

Ajoute un nombre d’unités de temps à un horodatage. Voir aussi getFutureTime().

addToTime('<timestamp>', <interval>, '<timeUnit>', '<format>'?)
Paramètre Obligatoire Type Description
<timestamp> Oui String Chaîne qui contient l’horodatage
<interval> Oui Integer Nombre d’unités de temps spécifiées à ajouter
<timeUnit> Oui String L’unité de temps à utiliser avec interval : "Second", "Minute", "Hour", "Day", "Week", "Month", "Year"
<format> Non String Spécificateur de format unique ou modèle de format personnalisé. Le format par défaut de l’horodatage est « o » (aaaa-MM-jjTHH:mm:ss.fffffffK), qui est conforme à la norme ISO 8601 et conserve les informations de fuseau horaire.
Valeur retournée Type Description
<updated-timestamp> String Horodatage plus nombre d’unités de temps spécifié

Exemple 1

Cet exemple illustre l’ajout d’un jour à l’horodatage spécifié :

addToTime('2018-01-01T00:00:00Z', 1, 'Day')

Et retourne ce résultat : "2018-01-02T00:00:00.0000000Z"

Exemple 2

Cet exemple illustre l’ajout d’un jour à l’horodatage spécifié :

addToTime('2018-01-01T00:00:00Z', 1, 'Day', 'D')

Et retourne le résultat en utilisant le format « D » facultatif : "Tuesday, January 2, 2018"

and

Vérifie si les deux expressions sont vraies. Retourne la valeur true lorsque les deux expressions sont vraies ou la valeur false lorsque au moins une expression est fausse.

and(<expression1>, <expression2>)
Paramètre Obligatoire Type Description
<expression1>, <expression2> Oui Boolean Expressions à vérifier
Valeur retournée Type Description
True ou False Boolean Retourne la valeur true lorsque les deux expressions sont vraies. Retourne la valeur false si au moins une expression est fausse.

Exemple 1

Ces exemples vérifient si les valeurs booléennes spécifiées sont vraies :

and(true, true)
and(false, true)
and(false, false)

Et retournent les résultats suivants :

  • Premier exemple : comme les deux expressions sont vraies, la valeur true est retournée.
  • Deuxième exemple : comme une des expressions est fausse, la valeur false est retournée.
  • Troisième exemple : comme les deux expressions sont fausses, la valeur false est retournée.

Exemple 2

Ces exemples vérifient si les expressions spécifiées sont vraies :

and(equals(1, 1), equals(2, 2))
and(equals(1, 1), equals(1, 2))
and(equals(1, 2), equals(1, 3))

Et retournent les résultats suivants :

  • Premier exemple : comme les deux expressions sont vraies, la valeur true est retournée.
  • Deuxième exemple : comme une des expressions est fausse, la valeur false est retournée.
  • Troisième exemple : comme les deux expressions sont fausses, la valeur false est retournée.

tableau

Retourne un tableau à partir d’une entrée spécifique unique. Pour des entrées multiples, consultez createArray().

array('<value>')
Paramètre Obligatoire Type Description
<value> Oui String Chaîne permettant de créer un tableau
Valeur retournée Type Description
[<value>] Array Tableau qui contient l’entrée spécifiée unique

Exemple

Cet exemple illustre la création d’un tableau à partir de la chaîne « hello » :

array('hello')

Et retourne ce résultat : ["hello"]

base64

Retourne la version encodée en Base64 d’une chaîne.

base64('<value>')
Paramètre Obligatoire Type Description
<value> Oui String Chaîne d’entrée
Valeur retournée Type Description
<base64-string> String Retourne la version encodée en Base64 de la chaîne d’entrée

Exemple

Cet exemple illustre la conversion d’une chaîne « hello » en chaîne encodée en Base64 :

base64('hello')

Et retourne ce résultat : "aGVsbG8="

base64ToBinary

Retourne la version binaire d’une chaîne encodée en Base64.

base64ToBinary('<value>')
Paramètre Obligatoire Type Description
<value> Oui String Chaîne encodée en Base64 à convertir
Valeur retournée Type Description
<binary-for-base64-string> String Version binaire de la chaîne encodée en Base64

Exemple

Cet exemple illustre la conversion d’une chaîne « aGVsbG8= » encodée en Base64 en chaîne binaire :

base64ToBinary('aGVsbG8=')

Et retourne ce résultat :

"0110000101000111010101100111001101100010010001110011100000111101"

base64ToString

Retourne la version de type chaîne d’une chaîne encodée en Base64, en décodant efficacement la chaîne Base64. Utilisez cette fonction plutôt que la fonction decodeBase64(). Bien que les deux fonctions agissent de manière identique, la fonction base64ToString() est préférée.

base64ToString('<value>')
Paramètre Obligatoire Type Description
<value> Oui String Chaîne encodée en Base64 à décoder
Valeur retournée Type Description
<decoded-base64-string> String Version de type chaîne d’une chaîne encodée en Base64

Exemple

Cet exemple illustre la conversion d’une chaîne « aGVsbG8= » encodée en Base64 en chaîne :

base64ToString('aGVsbG8=')

Et retourne ce résultat : "hello"

binary

Retourne la version binaire d’une chaîne.

binary('<value>')
Paramètre Obligatoire Type Description
<value> Oui String Chaîne à convertir
Valeur retournée Type Description
<binary-for-input-value> String Version binaire de la chaîne spécifiée

Exemple

Cet exemple illustre la conversion d’une chaîne « hello » en chaîne binaire :

binary('hello')

Et retourne ce résultat :

"0110100001100101011011000110110001101111"

bool

Retourne la version booléenne d’une valeur.

bool(<value>)
Paramètre Obligatoire Type Description
<value> Oui Quelconque Valeur à convertir
Valeur retournée Type Description
True ou False Boolean Version booléenne de la valeur spécifiée

Exemple

Ces exemples illustrent la conversion des valeurs spécifiées en valeurs booléennes :

bool(1)
bool(0)

Et retournent les résultats suivants :

  • Premier exemple : true
  • Second exemple : false

coalesce

Retourne la première valeur autre que Null d’un ou plusieurs paramètres. Les chaînes vides, les tableaux vides et les objets vides ne sont pas null.

coalesce(<object_1>, <object_2>, ...)
Paramètre Obligatoire Type Description
<object_1>, <object_2>, ... Oui N’importe lequel, possibilité de combiner plusieurs types Recherche de la valeur Null dans un ou plusieurs éléments
Valeur retournée Type Description
<first-non-null-item> Quelconque Premier élément ou valeur autre que Null. Si tous les paramètres ont la valeur Null, cette fonction retourne la valeur Null.

Exemple

Ces exemples retournent la première valeur autre que Null à partir des valeurs spécifiées ou la valeur Null lorsque toutes les valeurs le sont :

coalesce(null, true, false)
coalesce(null, 'hello', 'world')
coalesce(null, null, null)

Et retournent les résultats suivants :

  • Premier exemple : true
  • Second exemple : "hello"
  • Troisième exemple : null

concat

Combine au moins deux chaînes et retourne la chaîne combinée.

concat('<text1>', '<text2>', ...)
Paramètre Obligatoire Type Description
<text1>, <text2>, ... Oui String Au moins deux chaînes à combiner
Valeur retournée Type Description
<text1text2...> String Chaîne créée à partir des chaînes d’entrée combinées

Exemple

Cet exemple illustre la combinaison des chaînes « Hello » et « World » :

concat('Hello', 'World')

Et retourne ce résultat : "HelloWorld"

contains

Vérifie si une collection contient un élément spécifique. Retourne la valeur true lorsque l’élément est trouvé ou la valeur false lorsqu’il est introuvable. Cette fonction respecte la casse.

contains('<collection>', '<value>')
contains([<collection>], '<value>')

Plus précisément, cette fonction agit sur ces types de collection :

  • Une chaîne pour y rechercher une sous-chaîne
  • Un tableau pour y rechercher une valeur
  • Un ensemble de clés pour y rechercher une clé
Paramètre Obligatoire Type Description
<collection> Oui Chaîne, tableau ou ensemble de clés Collection à vérifier
<value> Oui Respectivement, chaîne, tableau ou ensemble de clés Élément à rechercher
Valeur retournée Type Description
True ou False Boolean Retourne la valeur true lorsque l’élément est trouvé. Retourne la valeur false lorsqu’elle est introuvable.

Exemple 1

Cet exemple recherche dans la chaîne « hello world » la sous-chaîne « world » et retourne la valeur true :

contains('hello world', 'world')

Exemple 2

Cet exemple recherche dans la chaîne « hello world » la sous-chaîne « universe » et retourne la valeur false :

contains('hello world', 'universe')

convertFromUtc

Convertit un horodatage du temps universel coordonné (UTC) au fuseau horaire cible.

convertFromUtc('<timestamp>', '<destinationTimeZone>', '<format>'?)
Paramètre Obligatoire Type Description
<timestamp> Oui String Chaîne qui contient l’horodatage
<destinationTimeZone> Oui String Nom du fuseau horaire cible. Pour les noms de fuseau horaire, consultez Valeurs de fuseau horaire Microsoft, mais vous devrez peut-être supprimer les signes de ponctuation du nom de fuseau horaire.
<format> Non String Spécificateur de format unique ou modèle de format personnalisé. Le format par défaut de l’horodatage est « o » (aaaa-MM-jjTHH:mm:ss.fffffffK), qui est conforme à la norme ISO 8601 et conserve les informations de fuseau horaire.
Valeur retournée Type Description
<converted-timestamp> String Horodatage converti au fuseau horaire cible

Exemple 1

Cet exemple illustre la conversion d’un horodatage au fuseau horaire spécifié :

convertFromUtc('2018-01-01T08:00:00.0000000Z', 'Pacific Standard Time')

Et retourne ce résultat : "2018-01-01T00:00:00Z"

Exemple 2

Cet exemple illustre la conversion d’un horodatage au fuseau horaire et au format spécifiés :

convertFromUtc('2018-01-01T08:00:00.0000000Z', 'Pacific Standard Time', 'D')

Et retourne ce résultat : "Monday, January 1, 2018"

convertTimeZone

Convertit un horodatage du fuseau horaire source au fuseau horaire cible.

convertTimeZone('<timestamp>', '<sourceTimeZone>', '<destinationTimeZone>', '<format>'?)
Paramètre Obligatoire Type Description
<timestamp> Oui String Chaîne qui contient l’horodatage
<sourceTimeZone> Oui String Nom du fuseau horaire source. Pour les noms de fuseau horaire, consultez Valeurs de fuseau horaire Microsoft, mais vous devrez peut-être supprimer les signes de ponctuation du nom de fuseau horaire.
<destinationTimeZone> Oui String Nom du fuseau horaire cible. Pour les noms de fuseau horaire, consultez Valeurs de fuseau horaire Microsoft, mais vous devrez peut-être supprimer les signes de ponctuation du nom de fuseau horaire.
<format> Non String Spécificateur de format unique ou modèle de format personnalisé. Le format par défaut de l’horodatage est « o » (aaaa-MM-jjTHH:mm:ss.fffffffK), qui est conforme à la norme ISO 8601 et conserve les informations de fuseau horaire.
Valeur retournée Type Description
<converted-timestamp> String Horodatage converti au fuseau horaire cible

Exemple 1

Cet exemple illustre la conversion du fuseau horaire source au fuseau horaire cible :

convertTimeZone('2018-01-01T08:00:00.0000000Z', 'UTC', 'Pacific Standard Time')

Et retourne ce résultat : "2018-01-01T00:00:00.0000000"

Exemple 2

Cet exemple illustre la conversion d’un fuseau horaire au format et au fuseau horaire spécifiés :

convertTimeZone('2018-01-01T08:00:00.0000000Z', 'UTC', 'Pacific Standard Time', 'D')

Et retourne ce résultat : "Monday, January 1, 2018"

convertToUtc

Convertit un horodatage du fuseau horaire source en temps universel coordonné (UTC).

convertToUtc('<timestamp>', '<sourceTimeZone>', '<format>'?)
Paramètre Obligatoire Type Description
<timestamp> Oui String Chaîne qui contient l’horodatage
<sourceTimeZone> Oui String Nom du fuseau horaire source. Pour les noms de fuseau horaire, consultez Valeurs de fuseau horaire Microsoft, mais vous devrez peut-être supprimer les signes de ponctuation du nom de fuseau horaire.
<format> Non String Spécificateur de format unique ou modèle de format personnalisé. Le format par défaut de l’horodatage est « o » (aaaa-MM-jjTHH:mm:ss.fffffffK), qui est conforme à la norme ISO 8601 et conserve les informations de fuseau horaire.
Valeur retournée Type Description
<converted-timestamp> String Horodatage converti en heure UTC

Exemple 1

Cet exemple illustre la conversion d’un horodatage en heure UTC :

convertToUtc('01/01/2018 00:00:00', 'Pacific Standard Time')

Et retourne ce résultat : "2018-01-01T08:00:00.0000000Z"

Exemple 2

Cet exemple illustre la conversion d’un horodatage en heure UTC :

convertToUtc('01/01/2018 00:00:00', 'Pacific Standard Time', 'D')

Et retourne ce résultat : "Monday, January 1, 2018"

createArray

Retourne un tableau à partir de plusieurs entrées. Pour les tableaux à entrée unique, consultez array().

createArray('<object1>', '<object2>', ...)
Paramètre Obligatoire Type Description
<object1>, <object2>, ... Oui N’importe lequel, mais pas de combinaison Au moins deux éléments pour créer le tableau
Valeur retournée Type Description
[<object1>, <object2>, ...] Array Tableau créé à partir de tous les éléments d’entrée

Exemple

Cet exemple illustre la création d’un tableau à partir de ces entrées :

createArray('h', 'e', 'l', 'l', 'o')

Et retourne ce résultat : ["h", "e", "l", "l", "o"]

dataUri

Retourne un URI de données pour une chaîne.

dataUri('<value>')
Paramètre Obligatoire Type Description
<value> Oui String Chaîne à convertir
Valeur retournée Type Description
<data-uri> String URI de données de la chaîne d’entrée

Exemple

Cet exemple illustre la création d’un URI de données à partir de la chaîne « hello » :

dataUri('hello')

Et retourne ce résultat : "data:text/plain;charset=utf-8;base64,aGVsbG8="

dataUriToBinary

Retourne la version binaire d’un URI (Uniform Resource Identifier) de données. Utilisez cette fonction plutôt que la fonction decodeDataUri(). Bien que les deux fonctions agissent de manière identique, la fonction dataUriBinary() est préférée.

dataUriToBinary('<value>')
Paramètre Obligatoire Type Description
<value> Oui String URI de données à convertir
Valeur retournée Type Description
<binary-for-data-uri> String Version binaire de l’URI de données

Exemple

Cet exemple illustre la création d’une version binaire pour cet URI de données :

dataUriToBinary('data:text/plain;charset=utf-8;base64,aGVsbG8=')

Et retourne ce résultat :

"01100100011000010111010001100001001110100111010001100101011110000111010000101111011100000 1101100011000010110100101101110001110110110001101101000011000010111001001110011011001010111 0100001111010111010101110100011001100010110100111000001110110110001001100001011100110110010 10011011000110100001011000110000101000111010101100111001101100010010001110011100000111101"

dataUriToString

Retourne la version de type chaîne d’un URI de données.

dataUriToString('<value>')
Paramètre Obligatoire Type Description
<value> Oui String URI de données à convertir
Valeur retournée Type Description
<string-for-data-uri> String Version de type chaîne de l’URI de données

Exemple

Cet exemple illustre la création d’une chaîne pour cet URI de données :

dataUriToString('data:text/plain;charset=utf-8;base64,aGVsbG8=')

Et retourne ce résultat : "hello"

dayOfMonth

Retourne le jour du mois d’un horodatage.

dayOfMonth('<timestamp>')
Paramètre Obligatoire Type Description
<timestamp> Oui String Chaîne qui contient l’horodatage
Valeur retournée Type Description
<day-of-month> Integer Jour du mois de l’horodatage spécifié

Exemple

Cet exemple retourne le numéro du jour du mois à partir de cet horodatage :

dayOfMonth('2018-03-15T13:27:36Z')

Et retourne ce résultat : 15

dayOfWeek

Retourne le jour de la semaine à partir d’un horodatage.

dayOfWeek('<timestamp>')
Paramètre Obligatoire Type Description
<timestamp> Oui String Chaîne qui contient l’horodatage
Valeur retournée Type Description
<day-of-week> Integer Jour de la semaine à partir de l’horodatage spécifié où dimanche représente 0, lundi représente 1, etc.

Exemple

Cet exemple retourne le numéro du jour de la semaine à partir de cet horodatage :

dayOfWeek('2018-03-15T13:27:36Z')

Et retourne ce résultat : 3

dayOfYear

Retourne le jour de l’année à partir d’un horodatage.

dayOfYear('<timestamp>')
Paramètre Obligatoire Type Description
<timestamp> Oui String Chaîne qui contient l’horodatage
Valeur retournée Type Description
<day-of-year> Integer Jour de l’année à partir de l’horodatage spécifié

Exemple

Cet exemple retourne le numéro du jour de l’année à partir de cet horodatage :

dayOfYear('2018-03-15T13:27:36Z')

Et retourne ce résultat : 74

decodeBase64

Retourne la version de type chaîne d’une chaîne encodée en Base64, en décodant efficacement la chaîne Base64. Pensez à utiliser la fonction base64ToString() plutôt que la fonction decodeBase64(). Bien que les deux fonctions agissent de manière identique, la fonction base64ToString() est préférée.

decodeBase64('<value>')
Paramètre Obligatoire Type Description
<value> Oui String Chaîne encodée en Base64 à décoder
Valeur retournée Type Description
<decoded-base64-string> String Version de type chaîne d’une chaîne encodée en Base64

Exemple

Cet exemple illustre la création d’une chaîne pour une chaîne encodée en Base64 :

decodeBase64('aGVsbG8=')

Et retourne ce résultat : "hello"

decodeDataUri

Retourne la version binaire d’un URI (Uniform Resource Identifier) de données. Pensez à utiliser la fonction dataUriToBinary() plutôt que la fonction decodeDataUri(). Bien que les deux fonctions agissent de manière identique, la fonction dataUriToBinary() est préférée.

decodeDataUri('<value>')
Paramètre Obligatoire Type Description
<value> Oui String Chaîne d’URI de données à décoder
Valeur retournée Type Description
<binary-for-data-uri> String Version binaire d’une chaîne d’URI de données

Exemple

Cet exemple retourne la version binaire de cet URI de données :

decodeDataUri('data:text/plain;charset=utf-8;base64,aGVsbG8=')

Et retourne ce résultat :

"01100100011000010111010001100001001110100111010001100101011110000111010000101111011100000 1101100011000010110100101101110001110110110001101101000011000010111001001110011011001010111 0100001111010111010101110100011001100010110100111000001110110110001001100001011100110110010 10011011000110100001011000110000101000111010101100111001101100010010001110011100000111101"

decodeUriComponent

Retourne une chaîne qui remplace les caractères d’échappement par des versions décodées.

decodeUriComponent('<value>')
Paramètre Obligatoire Type Description
<value> Oui String Chaîne contenant les caractères d’échappement à décoder
Valeur retournée Type Description
<decoded-uri> String Chaîne mise à jour contenant les caractères d’échappement décodés

Exemple

Cet exemple illustre le remplacement des caractères d’échappement de cette chaîne par des versions décodées :

decodeUriComponent('http%3A%2F%2Fcontoso.com')

Et retourne ce résultat : "https://contoso.com"

div

Retourner le résultat de la division d’un nombre par un autre.

div(<dividend>, <divisor>)

Le type de retour précis de la fonction dépend des types de ses paramètres : consultez les exemples pour plus de détails.

Paramètre Obligatoire Type Description
<dividend> Oui Entier ou flottant Nombre à diviser par le diviseur
<divisor> Oui Entier ou flottant Nombre qui divise dividend. Une valeur de divisor de zéro provoque une erreur au moment de l’exécution.
Valeur retournée Type Description
<quotient-result> Entier ou flottant Résultat de la division du premier nombre par le second

Exemple 1 :

Ces exemples divisent le nombre 9 par 2 :

div(9, 2.0)
div(9.0, 2)
div(9.0, 2.0)

Et tous retournent ce résultat : 4.5

Exemple 2

Cet exemple divise également le nombre 9 par 2, mais étant donné que les deux paramètres sont des entiers, le reste est ignoré (division entière) :

div(9, 2)

L’expression retourne le résultat 4. Pour obtenir la valeur du reste, utilisez la fonction mod().

encodeUriComponent

Retourne une version encodée sous forme d’URI d’une chaîne en remplaçant les caractères non sécurisés pour les URL par des caractères d’échappement. Pensez à utiliser la fonction uriComponent() plutôt que la fonction encodeUriComponent(). Bien que les deux fonctions agissent de manière identique, la fonction uriComponent() est préférée.

encodeUriComponent('<value>')
Paramètre Obligatoire Type Description
<value> Oui String Chaîne à convertir au format encodé sous forme d’URI
Valeur retournée Type Description
<encoded-uri> String Chaîne encodée sous forme d’URI avec des caractères d’échappement

Exemple

Cet exemple illustre la création d’une version encodée sous forme d’URI pour cette chaîne :

encodeUriComponent('https://contoso.com')

Et retourne ce résultat : "http%3A%2F%2Fcontoso.com"

empty

Vérifie si une collection est vide. Retourne la valeur true lorsque la collection est vide ou la valeur false dans le cas contraire.

empty('<collection>')
empty([<collection>])
Paramètre Obligatoire Type Description
<collection> Oui Chaîne, tableau ou objet Collection à vérifier
Valeur retournée Type Description
True ou False Boolean Retourne la valeur true lorsque la collection est vide. Retourne la valeur false lorsque la collection n’est pas vide.

Exemple

Ces exemples vérifient si les collections spécifiées sont vides :

empty('')
empty('abc')

Et retournent les résultats suivants :

  • Premier exemple : comme une chaîne vide est passée, la fonction retourne true.
  • Deuxième exemple : comme la chaîne « abc » est passée, la fonction retourne false.

endsWith

Vérifie si une chaîne se termine par une sous-chaîne spécifique. Retourne la valeur true lorsque la sous-chaîne est trouvée ou la valeur false lorsqu’elle est introuvable. Cette fonction ne respecte pas la casse.

endsWith('<text>', '<searchText>')
Paramètre Obligatoire Type Description
<text> Oui String Chaîne à vérifier
<searchText> Oui String Sous-chaîne de fin à rechercher
Valeur retournée Type Description
True ou False Boolean Retourne la valeur true lorsque la sous-chaîne de fin est trouvée. Retourne la valeur false lorsqu’elle est introuvable.

Exemple 1

Cet exemple vérifie si la chaîne « hello world » se termine par la chaîne « world » :

endsWith('hello world', 'world')

Et retourne ce résultat : true

Exemple 2

Cet exemple vérifie si la chaîne « hello world » se termine par la chaîne « universe » :

endsWith('hello world', 'universe')

Et retourne ce résultat : false

equals

Vérifie si les deux valeurs, expressions ou objets sont équivalents. Retourne la valeur true si les deux sont équivalents ou la valeur false s’ils ne le sont pas.

equals('<object1>', '<object2>')
Paramètre Obligatoire Type Description
<object1>, <object2> Oui Divers Valeurs, expressions ou objets à comparer
Valeur retournée Type Description
True ou False Boolean Retourne la valeur true lorsque les deux sont équivalents. Retourne la valeur false lorsque les deux ne sont pas équivalents.

Exemple

Ces exemples vérifient si les entrées spécifiées sont équivalentes.

equals(true, 1)
equals('abc', 'abcd')

Et retournent les résultats suivants :

  • Premier exemple : comme les deux valeurs sont équivalentes, la fonction retourne true.
  • Deuxième exemple : comme les deux valeurs ne sont pas équivalentes, la fonction retourne false.

first

Retourne le premier élément d’une chaîne ou d’un tableau.

first('<collection>')
first([<collection>])
Paramètre Obligatoire Type Description
<collection> Oui Chaîne ou tableau Collection dans laquelle rechercher le premier élément
Valeur retournée Type Description
<first-collection-item> Quelconque Premier élément de la collection

Exemple

Ces exemples illustrent la recherche du premier élément dans ces collections :

first('hello')
first(createArray(0, 1, 2))

Et retournent les résultats suivants :

  • Premier exemple : "h"
  • Second exemple : 0

float

Convertit une version de type chaîne d’un nombre à virgule flottante en nombre réel à virgule flottante.

float('<value>')
Paramètre Obligatoire Type Description
<value> Oui String Chaîne qui contient un nombre valide à virgule flottante à convertir
Valeur retournée Type Description
<float-value> Float Nombre à virgule flottante de la chaîne spécifiée

Exemple

Cet exemple illustre la création d’une version de type chaîne pour ce nombre à virgule flottante :

float('10.333')

Et retourne ce résultat : 10.333

formatDateTime

Retourne un horodatage au format spécifié.

formatDateTime('<timestamp>', '<format>'?)
Paramètre Obligatoire Type Description
<timestamp> Oui String Chaîne qui contient l’horodatage
<format> Non String Spécificateur de format unique ou modèle de format personnalisé. Le format par défaut de l’horodatage est « o » (aaaa-MM-jjTHH:mm:ss.fffffffK), qui est conforme à la norme ISO 8601 et conserve les informations de fuseau horaire.
Valeur retournée Type Description
<reformatted-timestamp> String Horodatage mis à jour au format spécifié

Exemple

Cet exemple illustre la conversion d’un horodatage au format spécifié :

formatDateTime('03/15/2018 12:00:00', 'yyyy-MM-ddTHH:mm:ss')

Et retourne ce résultat : "2018-03-15T12:00:00"

getFutureTime

Retourne l’horodatage actuel plus les unités de temps spécifiées.

getFutureTime(<interval>, <timeUnit>, <format>?)
Paramètre Obligatoire Type Description
<interval> Oui Integer Nombre d’unités de temps spécifiées à ajouter
<timeUnit> Oui String L’unité de temps à utiliser avec interval : "Second", "Minute", "Hour", "Day", "Week", "Month", "Year"
<format> Non String Spécificateur de format unique ou modèle de format personnalisé. Le format par défaut de l’horodatage est « o » (aaaa-MM-jjTHH:mm:ss.fffffffK), qui est conforme à la norme ISO 8601 et conserve les informations de fuseau horaire.
Valeur retournée Type Description
<updated-timestamp> String Horodatage actuel plus nombre d’unités de temps spécifié

Exemple 1

Supposez que l’horodatage actuel soit « 2018-03-01T00:00:00.0000000Z ». Cet exemple illustre l’ajout de cinq jours à cet horodatage :

getFutureTime(5, 'Day')

Et retourne ce résultat : "2018-03-06T00:00:00.0000000Z"

Exemple 2

Supposez que l’horodatage actuel soit « 2018-03-01T00:00:00.0000000Z ». Cet exemple illustre l’ajout de cinq jours et convertit le résultat au format « D » :

getFutureTime(5, 'Day', 'D')

Et retourne ce résultat : "Tuesday, March 6, 2018"

getPastTime

Retourne l’horodatage actuel moins les unités de temps spécifiées.

getPastTime(<interval>, <timeUnit>, <format>?)
Paramètre Obligatoire Type Description
<interval> Oui Integer Nombre d’unités de temps spécifiées à soustraire
<timeUnit> Oui String L’unité de temps à utiliser avec interval : "Second", "Minute", "Hour", "Day", "Week", "Month", "Year"
<format> Non String Spécificateur de format unique ou modèle de format personnalisé. Le format par défaut de l’horodatage est « o » (aaaa-MM-jjTHH:mm:ss.fffffffK), qui est conforme à la norme ISO 8601 et conserve les informations de fuseau horaire.
Valeur retournée Type Description
<updated-timestamp> String Horodatage actuel moins nombre d’unités de temps spécifié

Exemple 1

Supposez que l’horodatage actuel soit « 2018-02-01T00:00:00.0000000Z ». Cet exemple illustre le retrait de cinq jours de cet horodatage :

getPastTime(5, 'Day')

Et retourne ce résultat : "2018-01-27T00:00:00.0000000Z"

Exemple 2

Supposez que l’horodatage actuel soit « 2018-02-01T00:00:00.0000000Z ». Cet exemple illustre le retrait de cinq jours et convertit le résultat au format « D » :

getPastTime(5, 'Day', 'D')

Et retourne ce résultat : "Saturday, January 27, 2018"

greater

Vérifie si la première valeur est supérieure à la seconde. Retourne la valeur true si la première valeur est supérieure ou la valeur false si elle est inférieure.

greater(<value>, <compareTo>)
greater('<value>', '<compareTo>')
Paramètre Obligatoire Type Description
<value> Oui Entier, flottant ou chaîne Première valeur à vérifier pour déterminer si elle est supérieure à la seconde
<compareTo> Oui Respectivement entier, flottant ou chaîne Valeur de comparaison
Valeur retournée Type Description
True ou False Boolean Retourne la valeur true si la première valeur est supérieure à la seconde. Retourne la valeur false si la première valeur est égale ou inférieure à la seconde.

Exemple

Ces exemples vérifient si la première valeur est supérieure à la seconde :

greater(10, 5)
greater('apple', 'banana')

Et retournent les résultats suivants :

  • Premier exemple : true
  • Second exemple : false

greaterOrEquals

Vérifie si la première valeur est supérieure ou égale à la seconde. Retourne la valeur true si la première valeur est supérieure ou égale à la seconde, ou la valeur false si la première valeur est inférieure à la seconde.

greaterOrEquals(<value>, <compareTo>)
greaterOrEquals('<value>', '<compareTo>')
Paramètre Obligatoire Type Description
<value> Oui Entier, flottant ou chaîne Première valeur à vérifier pour déterminer si elle est supérieure ou égale à la seconde
<compareTo> Oui Respectivement entier, flottant ou chaîne Valeur de comparaison
Valeur retournée Type Description
True ou False Boolean Retourne la valeur true si la première valeur est supérieure ou égale à la seconde. Retourne la valeur false si la première valeur est inférieure à la seconde.

Exemple

Ces exemples vérifient si la première valeur est supérieure ou égale à la seconde :

greaterOrEquals(5, 5)
greaterOrEquals('apple', 'banana')

Et retournent les résultats suivants :

  • Premier exemple : true
  • Second exemple : false

guid

Génère un identificateur global unique (GUID) sous la forme d’une chaîne, par exemple « c2ecc88d-88c8-4096-912c-d6f2e2b138ce » :

guid()

Vous pouvez également spécifier un format différent pour le GUID autre que le format par défaut, « D », qui correspond à 32 chiffres séparés par des traits d’union.

guid('<format>')
Paramètre Obligatoire Type Description
<format> Non String Un seul spécificateur de format pour le GUID retourné. Par défaut, il s’agit du format « D », mais vous pouvez utiliser « N », « D », « B », « P » ou « X ».
Valeur retournée Type Description
<GUID-value> String GUID généré de manière aléatoire

Exemple

Cet exemple illustre la génération du même GUID, mais sous forme de 32 chiffres séparés par des traits d’union et placés entre parenthèses :

guid('P')

Et retourne ce résultat : "(c2ecc88d-88c8-4096-912c-d6f2e2b138ce)"

if

Vérifie si une expression est vraie ou fausse. En fonction du résultat, retourne une valeur spécifiée.

if(<expression>, <valueIfTrue>, <valueIfFalse>)
Paramètre Obligatoire Type Description
<expression> Oui Boolean Expression à vérifier
<valueIfTrue> Oui Quelconque Valeur à retourner lorsque l’expression est vraie
<valueIfFalse> Oui Quelconque Valeur à retourner lorsque l’expression est fausse
Valeur retournée Type Description
<specified-return-value> Quelconque Valeur spécifiée retournée selon que l’expression est vraie ou fausse

Exemple

Cet exemple retourne "yes", car l’expression spécifiée retourne la valeur true. Dans le cas contraire, l’exemple retourne "no" :

if(equals(1, 1), 'yes', 'no')

indexOf

Retourne la position ou la valeur d’index de départ d’une sous-chaîne. Cette fonction ne respecte pas la casse, et les index commencent par 0.

indexOf('<text>', '<searchText>')
Paramètre Obligatoire Type Description
<text> Oui String Chaîne comportant la sous-chaîne à rechercher
<searchText> Oui String Sous-chaîne à rechercher
Valeur retournée Type Description
<index-value> Integer Position ou valeur d’index de départ de la sous-chaîne spécifiée.

Si la chaîne est introuvable, retourne le chiffre -1.

Exemple

Cet exemple recherche la valeur d’index de départ de la sous-chaîne « world » dans la chaîne « hello world » :

indexOf('hello world', 'world')

Et retourne ce résultat : 6

int

Retourne la version de type entier d’une chaîne.

int('<value>')
Paramètre Obligatoire Type Description
<value> Oui String Chaîne à convertir
Valeur retournée Type Description
<integer-result> Integer Version de type entier de la chaîne spécifiée

Exemple

Cet exemple illustre la création d’une version de type entier pour la chaîne « 10 » :

int('10')

Et retourne ce résultat : 10

json

Retourne la valeur ou l’objet de type JavaScript Object Notation (JSON) d’une chaîne ou d’un élément XML.

json('<value>')
Paramètre Obligatoire Type Description
<value> Oui Chaîne ou élément XML Chaîne ou élément XML à convertir
Valeur retournée Type Description
<JSON-result> Objet ou type natif JSON Objet ou valeur de type natif JSON correspondant à la chaîne ou à l’élément XML spécifiés. Si la chaîne est Null, la fonction retourne un objet vide.

Exemple 1

Cet exemple illustre la conversion de cette chaîne en valeur JSON :

json('[1, 2, 3]')

Et retourne ce résultat : [1, 2, 3]

Exemple 2

Cet exemple illustre la conversion de cette chaîne au format JSON :

json('{"fullName": "Sophia Owen"}')

Et retourne ce résultat :

{
  "fullName": "Sophia Owen"
}

Exemple 3

Cet exemple illustre la conversion de cet élément XML au format JSON :

json(xml('<?xml version="1.0"?> <root> <person id='1'> <name>Sophia Owen</name> <occupation>Engineer</occupation> </person> </root>'))

Et retourne ce résultat :

{
   "?xml": { "@version": "1.0" },
   "root": {
      "person": [ {
         "@id": "1",
         "name": "Sophia Owen",
         "occupation": "Engineer"
      } ]
   }
}

intersection

Retourne une collection qui contient uniquement les éléments communs aux collections spécifiées. Pour qu’il apparaisse dans le résultat, un élément doit apparaître dans toutes les collections transmises à cette fonction. Si un ou plusieurs éléments portent le même nom, le dernier élément de ce nom apparaît dans le résultat.

intersection([<collection1>], [<collection2>], ...)
intersection('<collection1>', '<collection2>', ...)
Paramètre Obligatoire Type Description
<collection1>, <collection2>, ... Oui Tableau ou objet, mais pas les deux Collections à partir desquelles vous souhaitez uniquement les éléments communs
Valeur retournée Type Description
<common-items> Tableau ou objet, respectivement Collection qui contient uniquement les éléments communs aux collections spécifiées

Exemple

Cet exemple recherche les éléments communs dans ces tableaux :

intersection(createArray(1, 2, 3), createArray(101, 2, 1, 10), createArray(6, 8, 1, 2))

Et retourne un tableau comportant uniquement ces éléments : [1, 2]

join

Retourne une chaîne qui contient tous les éléments d’un tableau, et dont tous les caractères sont séparés par un séparateur.

join([<collection>], '<delimiter>')
Paramètre Obligatoire Type Description
<collection> Oui Array Tableau qui comporte les éléments à joindre
<delimiter> Oui String Séparateur affiché entre chaque caractère de la chaîne obtenue
Valeur retournée Type Description
<char1><delimiter><char2><delimiter>... String Chaîne obtenue créée à partir de tous les éléments du tableau spécifié

Exemple

Cet exemple illustre la création d’une chaîne à partir de tous les éléments de ce tableau avec le caractère spécifié comme séparateur :

join(createArray('a', 'b', 'c'), '.')

Et retourne ce résultat : "a.b.c"

last

Retourne le dernier élément d’une collection.

last('<collection>')
last([<collection>])
Paramètre Obligatoire Type Description
<collection> Oui Chaîne ou tableau Collection dans laquelle rechercher le dernier élément
Valeur retournée Type Description
<last-collection-item> Chaîne ou tableau, respectivement Dernier élément de la collection

Exemple

Ces exemples illustrent la recherche du dernier élément dans ces collections :

last('abcd')
last(createArray(0, 1, 2, 3))

Et retournent les résultats suivants :

  • Premier exemple : "d"
  • Second exemple : 3

lastIndexOf

Retourne la position de départ ou la valeur d’index de la dernière occurrence d’une sous-chaîne. Cette fonction ne respecte pas la casse, et les index commencent par 0.

lastIndexOf('<text>', '<searchText>')
Paramètre Obligatoire Type Description
<text> Oui String Chaîne comportant la sous-chaîne à rechercher
<searchText> Oui String Sous-chaîne à rechercher
Valeur retournée Type Description
<ending-index-value> Integer Retourne la position de départ ou la valeur d’index de la dernière occurrence de la sous-chaîne spécifiée.

Si la chaîne est introuvable, retourne le chiffre -1.

Exemple

Cet exemple recherche la valeur d’index de départ de la dernière occurrence de la sous-chaîne « world » dans la chaîne « hello world » :

lastIndexOf('hello world', 'world')

Et retourne ce résultat : 6

length

Retourne le nombre d’éléments d’une collection.

length('<collection>')
length([<collection>])
Paramètre Obligatoire Type Description
<collection> Oui Chaîne ou tableau Collection contenant les éléments à comptabiliser
Valeur retournée Type Description
<length-or-count> Integer Nombre d’éléments de la collection

Exemple

Ces exemples illustrent le comptage du nombre d’éléments contenus dans ces collections :

length('abcd')
length(createArray(0, 1, 2, 3))

Et retourne ce résultat : 4

less

Vérifie si la première valeur est inférieure à la seconde. Retourne la valeur true si la première valeur est inférieure à la seconde, ou la valeur false si la première valeur est supérieure à la seconde.

less(<value>, <compareTo>)
less('<value>', '<compareTo>')
Paramètre Obligatoire Type Description
<value> Oui Entier, flottant ou chaîne Première valeur à vérifier pour déterminer si elle est inférieure à la seconde
<compareTo> Oui Respectivement entier, flottant ou chaîne Élément de comparaison
Valeur retournée Type Description
True ou False Boolean Retourne la valeur true si la première valeur est inférieure à la seconde. Retourne la valeur false si la première valeur est égale ou supérieure à la seconde.

Exemple

Ces exemples vérifient si la première valeur est inférieure à la seconde.

less(5, 10)
less('banana', 'apple')

Et retournent les résultats suivants :

  • Premier exemple : true
  • Second exemple : false

lessOrEquals

Vérifie si la première valeur est inférieure ou égale à la seconde. Retourne la valeur true si la première valeur est inférieure ou égale à la seconde, ou la valeur false si la première valeur est supérieure à la seconde.

lessOrEquals(<value>, <compareTo>)
lessOrEquals('<value>', '<compareTo>')
Paramètre Obligatoire Type Description
<value> Oui Entier, flottant ou chaîne Première valeur à vérifier pour déterminer si elle est inférieure ou égale à la seconde
<compareTo> Oui Respectivement entier, flottant ou chaîne Élément de comparaison
Valeur retournée Type Description
True ou False Boolean Retourne la valeur true si la première valeur est inférieure ou égale à la seconde. Retourne la valeur false si la première valeur est supérieure à la seconde.

Exemple

Ces exemples vérifient si la première valeur est inférieure ou égale à la seconde.

lessOrEquals(10, 10)
lessOrEquals('apply', 'apple')

Et retournent les résultats suivants :

  • Premier exemple : true
  • Second exemple : false

max

Retourne la valeur la plus élevée d’une liste ou d’un tableau de nombres incluse aux deux extrémités.

max(<number1>, <number2>, ...)
max([<number1>, <number2>, ...])
Paramètre Obligatoire Type Description
<number1>, <number2>, ... Oui Entier, flottant ou les deux Ensemble de nombres dont vous voulez la valeur la plus élevée
[<number1>, <number2>, ...] Oui Tableau : entier, flottant ou les deux Tableau de nombres dont vous voulez la valeur la plus élevée
Valeur retournée Type Description
<max-value> Entier ou flottant Valeur la plus élevée dans le tableau ou l’ensemble de nombres spécifié

Exemple

Ces exemples illustrent l’obtention de la valeur la plus élevée de l’ensemble des nombres et du tableau :

max(1, 2, 3)
max(createArray(1, 2, 3))

Et retourne ce résultat : 3

min

Retourne la plus petite valeur d’un ensemble de nombres ou d’un tableau.

min(<number1>, <number2>, ...)
min([<number1>, <number2>, ...])
Paramètre Obligatoire Type Description
<number1>, <number2>, ... Oui Entier, flottant ou les deux Ensemble de nombres dont vous voulez la valeur la plus petite
[<number1>, <number2>, ...] Oui Tableau : entier, flottant ou les deux Tableau de nombres dont vous voulez la valeur la plus petite
Valeur retournée Type Description
<min-value> Entier ou flottant Valeur la plus petite dans le tableau ou l’ensemble de nombres spécifiés

Exemple

Ces exemples illustrent l’obtention de la valeur la plus petite de l’ensemble des nombres et du tableau :

min(1, 2, 3)
min(createArray(1, 2, 3))

Et retourne ce résultat : 1

mod

Retourner le reste de la division d’un nombre par un autre. Pour la division par un entier, consultez div().

mod(<dividend>, <divisor>)
Paramètre Obligatoire Type Description
<dividend> Oui Entier ou flottant Nombre à diviser par le diviseur
<divisor> Oui Entier ou flottant Nombre qui divise dividend. Une valeur de divisor de zéro provoque une erreur au moment de l’exécution.
Valeur retournée Type Description
<modulo-result> Entier ou flottant Reste de la division du premier nombre par le second nombre

Exemple

Cet exemple calcule le reste lorsque le premier nombre est divisé par le deuxième :

mod(3, 2)

Et retourne ce résultat : 1

mul

Retourne le produit de la multiplication de deux nombres.

mul(<multiplicand1>, <multiplicand2>)
Paramètre Obligatoire Type Description
<multiplicand1> Oui Entier ou flottant Nombre à multiplier par multiplicand2
<multiplicand2> Oui Entier ou flottant Nombre par lequel multiplicand1 est multiplié
Valeur retournée Type Description
<product-result> Entier ou flottant Produit de la multiplication du premier nombre par le second nombre

Exemple

Ces exemples illustrent la multiplication du premier nombre par le second nombre :

mul(1, 2)
mul(1.5, 2)

Et retournent les résultats suivants :

  • Premier exemple : 2
  • Second exemple : 3

not

Vérifie si une expression est fausse. Retourne la valeur true lorsque l’expression est fausse, ou la valeur false lorsque l’expression est vraie.

not(<expression>)
Paramètre Obligatoire Type Description
<expression> Oui Boolean Expression à vérifier
Valeur retournée Type Description
True ou False Boolean Retourne la valeur true lorsque l’expression est fausse. Retourne la valeur false lorsque l’expression est vraie.

Exemple 1

Ces exemples vérifient si les expressions spécifiées sont fausses :

not(false)
not(true)

Et retournent les résultats suivants :

  • Premier exemple : comme l’expression est fausse, la fonction retourne true.
  • Deuxième exemple : comme l’expression est vraie, la fonction retourne false.

Exemple 2

Ces exemples vérifient si les expressions spécifiées sont fausses :

not(equals(1, 2))
not(equals(1, 1))

Et retournent les résultats suivants :

  • Premier exemple : comme l’expression est fausse, la fonction retourne true.
  • Deuxième exemple : comme l’expression est vraie, la fonction retourne false.

or

Vérifie si au moins une expression est vraie. Retourne la valeur true si au moins une expression est vraie ou la valeur false si les expressions sont fausses.

or(<expression1>, <expression2>)
Paramètre Obligatoire Type Description
<expression1>, <expression2> Oui Boolean Expressions à vérifier
Valeur retournée Type Description
True ou False Boolean Retourne la valeur true si au moins une expression est vraie. Retourne la valeur false lorsque les expressions sont fausses.

Exemple 1

Ces exemples vérifient si au moins une expression est vraie :

or(true, false)
or(false, false)

Et retournent les résultats suivants :

  • Premier exemple : comme au moins une expression est vraie, la fonction retourne true.
  • Deuxième exemple : comme les deux expressions sont fausses, la fonction retourne false.

Exemple 2

Ces exemples vérifient si au moins une expression est vraie :

or(equals(1, 1), equals(1, 2))
or(equals(1, 2), equals(1, 3))

Et retournent les résultats suivants :

  • Premier exemple : comme au moins une expression est vraie, la fonction retourne true.
  • Deuxième exemple : comme les deux expressions sont fausses, la fonction retourne false.

rand

Retourne un entier aléatoire à partir d’une plage spécifiée, qui est inclus uniquement au point de départ.

rand(<minValue>, <maxValue>)
Paramètre Obligatoire Type Description
<minValue> Oui Integer Entier le plus petit de la plage
<maxValue> Oui Integer Entier qui suit l’entier le plus élevé dans la plage que la fonction peut retourner
Valeur retournée Type Description
<random-result> Integer Entier aléatoire retourné à partir de la plage spécifiée. Notez que chaque appel de rand() génère un résultat unique, ce qui signifie que la valeur que vous observez dans l’analyse de sortie peut ne pas être la même au moment de l’exécution réelle.

Exemple

Cet exemple illustre l’obtention d’un entier aléatoire à partir de la plage spécifiée, en excluant la valeur maximale :

rand(1, 5)

Et retourne l’un de ces nombres comme résultat : 1, 2, 3 ou 4

range

Retourne un tableau d’entiers qui commence par un entier spécifique.

range(<startIndex>, <count>)
Paramètre Obligatoire Type Description
<startIndex> Oui Integer Une valeur entière qui constitue le premier élément du tableau
<count> Oui Integer Nombre d’entiers du tableau
Valeur retournée Type Description
[<range-result>] Array Tableau dont les entiers commencent à partir de l’index spécifié

Exemple

Cet exemple illustre la création d’un tableau d’entiers qui commence à partir de l’index spécifié et qui possède le nombre spécifié d’entiers :

range(1, 4)

Et retourne ce résultat : [1, 2, 3, 4]

remplacer

Remplace une sous-chaîne par la chaîne spécifiée et retourne la chaîne de résultat. Cette fonction respecte la casse.

replace('<text>', '<oldText>', '<newText>')
Paramètre Obligatoire Type Description
<text> Oui String Chaîne comportant la sous-chaîne à remplacer
<oldText> Oui String Sous-chaîne à remplacer
<newText> Oui String Chaîne de remplacement
Valeur retournée Type Description
<updated-text> Chaîne Chaîne mise à jour après le remplacement de la sous-chaîne

Si la sous-chaîne est introuvable, retourne la chaîne d’origine.

Exemple

Cet exemple recherche l’ancienne sous-chaîne dans l’ancienne chaîne, et remplace « old » par « new » :

replace('the old string', 'old', 'new')

Et retourne ce résultat : "the new string"

skip

Supprime des éléments du début d’une collection et retourne tous les autres éléments.

skip([<collection>], <count>)
Paramètre Obligatoire Type Description
<collection> Oui Array Collection dont vous voulez supprimer des éléments
<count> Oui Integer Entier positif correspondant au nombre d’éléments à supprimer au début
Valeur retournée Type Description
[<updated-collection>] Array Collection mise à jour à l’issue de la suppression des éléments spécifiés

Exemple

Cet exemple illustre la suppression d’un élément, le nombre 0, au début du tableau spécifié :

skip(createArray(0, 1, 2, 3), 1)

Et retourne ce tableau avec les éléments restants : [1,2,3]

split

Divise une chaîne de caractères à chaque occurrence d'un délimiteur spécifié, en renvoyant les sous-chaînes résultantes sous forme d'éléments d'un tableau. Un délimiteur est généralement constitué d'un seul caractère, mais les délimiteurs à plusieurs caractères sont pris en charge.

split('<text>', '<delimiter>')
Paramètre Obligatoire Type Description
<text> Oui Chaîne Chaîne à séparer en sous-chaînes
<delimiter> Oui Chaîne Chaîne à utiliser en tant que délimiteur
Valeur retournée Type Description
[<substring1>,<substring2>,...] Array Un tableau qui contient des sous-chaînes extraites de la chaîne d’origine

Exemple

Cet exemple renvoie un tableau contenant les sous-chaînes de la chaîne « a_b_c » en fonction du délimiteur « _ » :

split('a_b_c', '_')

Le tableau retourné est : ["a","b","c"]

startOfDay

Retourne le début du jour d’un horodatage.

startOfDay('<timestamp>', '<format>'?)
Paramètre Obligatoire Type Description
<timestamp> Oui String Chaîne qui contient l’horodatage
<format> Non String Spécificateur de format unique ou modèle de format personnalisé. Le format par défaut de l’horodatage est « o » (aaaa-MM-jjTHH:mm:ss.fffffffK), qui est conforme à la norme ISO 8601 et conserve les informations de fuseau horaire.
Valeur retournée Type Description
<updated-timestamp> String Horodatage spécifié, mais commençant à la marque zéro-heure du jour

Exemple

Cet exemple recherche le début du jour pour cet horodatage :

startOfDay('2018-03-15T13:30:30Z')

Et retourne ce résultat : "2018-03-15T00:00:00.0000000Z"

startOfHour

Retourne le début de l’heure d’un horodatage.

startOfHour('<timestamp>', '<format>'?)
Paramètre Obligatoire Type Description
<timestamp> Oui String Chaîne qui contient l’horodatage
<format> Non String Spécificateur de format unique ou modèle de format personnalisé. Le format par défaut de l’horodatage est « o » (aaaa-MM-jjTHH:mm:ss.fffffffK), qui est conforme à la norme ISO 8601 et conserve les informations de fuseau horaire.
Valeur retournée Type Description
<updated-timestamp> String Horodatage spécifié, mais commençant à la marque zéro-minute de l’heure

Exemple

Cet exemple recherche le début de l’heure pour cet horodatage :

startOfHour('2018-03-15T13:30:30Z')

Et retourne ce résultat : "2018-03-15T13:00:00.0000000Z"

startOfMonth

Retourne le début du mois pour un horodatage.

startOfMonth('<timestamp>', '<format>'?)
Paramètre Obligatoire Type Description
<timestamp> Oui String Chaîne qui contient l’horodatage
<format> Non String Spécificateur de format unique ou modèle de format personnalisé. Le format par défaut de l’horodatage est « o » (aaaa-MM-jjTHH:mm:ss.fffffffK), qui est conforme à la norme ISO 8601 et conserve les informations de fuseau horaire.
Valeur retournée Type Description
<updated-timestamp> String Horodatage spécifié, mais démarrant le premier jour du mois à la marque zéro-heure

Exemple

Cet exemple retourne le début du mois pour cet horodatage :

startOfMonth('2018-03-15T13:30:30Z')

Et retourne ce résultat : "2018-03-01T00:00:00.0000000Z"

startsWith

Vérifie si une chaîne commence par une sous-chaîne spécifique. Retourne la valeur true lorsque la sous-chaîne est trouvée ou la valeur false lorsqu’elle est introuvable. Cette fonction ne respecte pas la casse.

startsWith('<text>', '<searchText>')
Paramètre Obligatoire Type Description
<text> Oui String Chaîne à vérifier
<searchText> Oui String Chaîne de départ à rechercher
Valeur retournée Type Description
True ou False Boolean Retourne la valeur true lorsque la sous-chaîne de début est trouvée. Retourne la valeur false lorsqu’elle est introuvable.

Exemple 1

Cet exemple vérifie si la chaîne « hello world » commence par la sous-chaîne « hello » :

startsWith('hello world', 'hello')

Et retourne ce résultat : true

Exemple 2

Cet exemple vérifie si la chaîne « hello world » commence par la sous-chaîne « greetings » :

startsWith('hello world', 'greetings')

Et retourne ce résultat : false

string

Retourne la version de type chaîne d’une valeur.

string(<value>)
Paramètre Obligatoire Type Description
<value> Oui Quelconque Valeur à convertir
Valeur retournée Type Description
<string-value> String Version de type chaîne de la valeur spécifiée

Exemple 1

Cet exemple illustre la création de la version de type chaîne pour ce nombre :

string(10)

Et retourne ce résultat : "10"

Exemple 2

Cet exemple illustre la création d’une chaîne pour l’objet JSON spécifié et utilise le caractère de barre oblique inverse (\) comme caractère d’échappement pour le guillemet double (").

string( { "name": "Sophie Owen" } )

Et retourne ce résultat : "{ \\"name\\": \\"Sophie Owen\\" }"

sub

Retourner le résultat de la soustraction d’un nombre d’un autre.

sub(<minuend>, <subtrahend>)
Paramètre Obligatoire Type Description
<minuend> Oui Entier ou flottant Nombre à partir duquel soustraire le plus petit terme
<subtrahend> Oui Entier ou flottant Nombre à soustraire du plus petit terme
Valeur retournée Type Description
<result> Entier ou flottant Résultat de la soustraction du second nombre du premier

Exemple

Cet exemple illustre la soustraction du second nombre du premier :

sub(10.3, .3)

Et retourne ce résultat : 10

substring

Retourne les caractères d’une chaîne, en commençant à partir de la position spécifiée ou de l’index. Les valeurs d’index commencent par le chiffre 0.

substring('<text>', <startIndex>, <length>)
Paramètre Obligatoire Type Description
<text> Oui String Chaîne dont vous souhaitez les caractères
<startIndex> Oui Integer Une valeur positive supérieure ou égale à 0 que vous souhaitez utiliser comme la valeur de position ou l’index de départ
<length> Oui Integer Nombre positif de caractères que vous souhaitez dans la sous-chaîne
Valeur retournée Type Description
<substring-result> String Sous-chaîne contenant le nombre spécifié de caractères, en commençant à la position d’index spécifiée dans la chaîne source

Exemple

Cet exemple illustre la création d’une sous-chaîne de cinq caractères à partir de la chaîne spécifiée, en commençant à partir de la valeur d’index 6 :

substring('hello world', 6, 5)

Et retourne ce résultat : "world"

subtractFromTime

Soustrait un nombre d’unités de temps d’un horodatage. Voir aussi getPastTime.

subtractFromTime('<timestamp>', <interval>, '<timeUnit>', '<format>'?)
Paramètre Obligatoire Type Description
<timestamp> Oui String Chaîne qui contient l’horodatage
<interval> Oui Integer Nombre d’unités de temps spécifiées à soustraire
<timeUnit> Oui String L’unité de temps à utiliser avec interval : "Second", "Minute", "Hour", "Day", "Week", "Month", "Year"
<format> Non String Spécificateur de format unique ou modèle de format personnalisé. Le format par défaut de l’horodatage est « o » (aaaa-MM-jjTHH:mm:ss.fffffffK), qui est conforme à la norme ISO 8601 et conserve les informations de fuseau horaire.
Valeur retournée Type Description
<updated-timestamp> String Horodatage moins le nombre d’unités de temps spécifié

Exemple 1

Cet exemple soustrait un jour de cet horodatage :

subtractFromTime('2018-01-02T00:00:00Z', 1, 'Day')

Et retourne ce résultat : "2018-01-01T00:00:00:0000000Z"

Exemple 2

Cet exemple soustrait un jour de cet horodatage :

subtractFromTime('2018-01-02T00:00:00Z', 1, 'Day', 'D')

Et retourne ce résultat en utilisant le format « D » facultatif : "Monday, January, 1, 2018"

take

Retourne des éléments du début d’une collection.

take('<collection>', <count>)
take([<collection>], <count>)
Paramètre Obligatoire Type Description
<collection> Oui Chaîne ou tableau Collection dont vous souhaitez des éléments
<count> Oui Integer Entier positif correspondant au nombre d’éléments que vous souhaitez à partir du début
Valeur retournée Type Description
<subset> or [<subset>] Chaîne ou tableau, respectivement Chaîne ou tableau qui comporte le nombre spécifié d’éléments obtenus à partir du début de la collection d’origine

Exemple

Ces exemples illustrent l’obtention du nombre spécifié d’éléments à partir du début de ces collections :

take('abcde', 3)
take(createArray(0, 1, 2, 3, 4), 3)

Et retournent les résultats suivants :

  • Premier exemple : "abc"
  • Second exemple : [0, 1, 2]

ticks

Retourne la valeur de la propriété ticks pour un horodatage spécifique. Une graduation est un intervalle de 100 nanosecondes.

ticks('<timestamp>')
Paramètre Obligatoire Type Description
<timestamp> Oui String Chaîne d’un horodatage
Valeur retournée Type Description
<ticks-number> Integer Nombre de cycles écoulés depuis le 1er janvier 0001 minuit (00:00:00), dans le calendrier grégorien depuis l’horodatage d’entrée

toLower

Retourne une chaîne en minuscules. Si un caractère de la chaîne n’a pas de version en minuscules, ce caractère reste tel quel dans la chaîne retournée.

toLower('<text>')
Paramètre Obligatoire Type Description
<text> Oui String Chaîne à retourner en minuscules
Valeur retournée Type Description
<lowercase-text> String Chaîne d’origine en minuscules

Exemple

Cet exemple illustre la conversion de cette chaîne en minuscules :

toLower('Hello World')

Et retourne ce résultat : "hello world"

toUpper

Retourne une chaîne en majuscules. Si un caractère de la chaîne n’a pas de version en majuscules, ce caractère reste tel quel dans la chaîne retournée.

toUpper('<text>')
Paramètre Obligatoire Type Description
<text> Oui String Chaîne à retourner en majuscules
Valeur retournée Type Description
<uppercase-text> String Chaîne d’origine en majuscules

Exemple

Cet exemple illustre la conversion de cette chaîne en majuscules :

toUpper('Hello World')

Et retourne ce résultat : "HELLO WORLD"

trim

Supprime les espaces blancs de début et de fin d’une chaîne et retourne la chaîne mise à jour.

trim('<text>')
Paramètre Obligatoire Type Description
<text> Oui String Chaîne contenant les espaces blancs de début et de fin à supprimer
Valeur retournée Type Description
<updatedText> String Version mise à jour de la chaîne d’origine sans espace blanc de début ou de fin

Exemple

Dans cet exemple, les espaces blancs de début et de fin sont supprimés de la chaîne " Hello World " :

trim(' Hello World  ')

Et retourne ce résultat : "Hello World"

union

Retourne une collection qui contient tous les éléments des collections spécifiées. Pour qu’il apparaisse dans le résultat, un élément peut apparaître dans n’importe quelle collection transmise à cette fonction. Si un ou plusieurs éléments portent le même nom, le dernier élément de ce nom apparaît dans le résultat.

union('<collection1>', '<collection2>', ...)
union([<collection1>], [<collection2>], ...)
Paramètre Obligatoire Type Description
<collection1>, <collection2>, ... Oui Tableau ou objet, mais pas les deux Collections dont vous souhaitez tous les éléments
Valeur retournée Type Description
<updatedCollection> Tableau ou objet, respectivement Collection qui contient tous les éléments des collections spécifiées (pas de doublons)

Exemple

Cet exemple illustre l’obtention de tous les éléments de ces collections :

union(createArray(1, 2, 3), createArray(1, 2, 10, 101))

Et retourne ce résultat : [1, 2, 3, 10, 101]

uriComponent

Retourne une version encodée sous forme d’URI d’une chaîne en remplaçant les caractères non sécurisés pour les URL par des caractères d’échappement. Utilisez cette fonction plutôt que la fonction encodeUriComponent(). Bien que les deux fonctions agissent de manière identique, la fonction uriComponent() est préférée.

uriComponent('<value>')
Paramètre Obligatoire Type Description
<value> Oui String Chaîne à convertir au format encodé sous forme d’URI
Valeur retournée Type Description
<encoded-uri> String Chaîne encodée sous forme d’URI avec des caractères d’échappement

Exemple

Cet exemple illustre la création d’une version encodée sous forme d’URI pour cette chaîne :

uriComponent('https://contoso.com')

Et retourne ce résultat : "http%3A%2F%2Fcontoso.com"

uriComponentToBinary

Retourne la version binaire d’un composant d’URI.

uriComponentToBinary('<value>')
Paramètre Obligatoire Type Description
<value> Oui String Chaîne encodée sous forme d’URI à convertir
Valeur retournée Type Description
<binary-for-encoded-uri> String Version binaire de la chaîne encodée sous forme d’URI. Le contenu binaire est encodé en Base64 et représenté par $content.

Exemple

Cet exemple illustre la création de la version binaire de cette chaîne encodée sous forme d’URI :

uriComponentToBinary('http%3A%2F%2Fcontoso.com')

Et retourne ce résultat :

"001000100110100001110100011101000111000000100101001100 11010000010010010100110010010001100010010100110010010001 10011000110110111101101110011101000110111101110011011011 110010111001100011011011110110110100100010"

uriComponentToString

Retourne la version de type chaîne d’une chaîne encodée sous forme d’URI, en décodant efficacement la chaîne encodée sous forme d’URI.

uriComponentToString('<value>')
Paramètre Obligatoire Type Description
<value> Oui String Chaîne encodée sous forme d’URI à décoder
Valeur retournée Type Description
<decoded-uri> String Version décodée de la chaîne encodée sous forme d’URI

Exemple

Cet exemple illustre la création de la version de type chaîne décodée pour cette chaîne encodée sous forme d’URI :

uriComponentToString('http%3A%2F%2Fcontoso.com')

Et retourne ce résultat : "https://contoso.com"

utcNow

Retourne l’horodatage actuel.

utcNow('<format>')

Si vous le souhaitez, vous pouvez spécifier un autre format avec le paramètre <format>.

Paramètre Obligatoire Type Description
<format> Non String Spécificateur de format unique ou modèle de format personnalisé. Le format par défaut de l’horodatage est « o » (aaaa-MM-jjTHH:mm:ss.fffffffK), qui est conforme à la norme ISO 8601 et conserve les informations de fuseau horaire.
Valeur retournée Type Description
<current-timestamp> String Date et heure actuelles

Exemple 1

Supposons que nous soyons le 15 avril 2018 à 13:00:00. Cet exemple illustre l’obtention de l’horodatage actuel :

utcNow()

Et retourne ce résultat : "2018-04-15T13:00:00.0000000Z"

Exemple 2

Supposons que nous soyons le 15 avril 2018 à 13:00:00. Cet exemple illustre l’obtention de l’horodatage actuel en utilisant le format « D » facultatif :

utcNow('D')

Et retourne ce résultat : "Sunday, April 15, 2018"

Xml

Retourne la version XML d’une chaîne qui contient un objet JSON.

xml('<value>')
Paramètre Obligatoire Type Description
<value> Oui Chaîne Chaîne contenant l’objet JSON à convertir

L’objet JSON ne doit avoir qu’une seule propriété racine, qui ne peut pas être un tableau.
Utilisez le caractère de barre oblique inverse (\) comme caractère d’échappement pour le guillemet double (").

Valeur retournée Type Description
<xml-version> Object Élément XML encodé correspondant à la chaîne ou à l’objet JSON spécifié

Exemple 1

Cet exemple illustre la création de la version XML de cette chaîne, qui contient un objet JSON :

xml(json('{ \"name\": \"Sophia Owen\" }'))

Et retourne le résultat XML suivant :

<name>Sophia Owen</name>

Exemple 2

Supposons que vous disposiez de cet objet JSON :

{
  "person": {
    "name": "Sophia Owen",
    "city": "Seattle"
  }
}

Cet exemple illustre la création d’un élément XML pour une chaîne qui contient l’objet JSON :

xml(json('{\"person\": {\"name\": \"Sophia Owen\", \"city\": \"Seattle\"}}'))

Et retourne le résultat XML suivant :

<person>
  <name>Sophia Owen</name>
  <city>Seattle</city>
<person>

xpath

Vérifie si le code XML contient des valeurs ou des nœuds qui correspondent à une expression de langage XPath et retourne les valeurs ou les nœuds correspondants. Une expression XPath, ou simplement « XPath », vous permet de parcourir une structure de document XML afin de pouvoir sélectionner des nœuds ou des valeurs de calcul dans le contenu XML.

xpath('<xml>', '<xpath>')
Paramètre Obligatoire Type Description
<xml> Oui Quelconque Chaîne XML pour rechercher des nœuds ou des valeurs qui correspondent à une valeur d’expression XPath
<xpath> Oui Quelconque Expression XPath utilisée pour rechercher des nœuds ou des valeurs XML correspondants
Valeur retournée Type Description
<xml-node> XML Nœud XML lorsqu’un seul nœud correspond à l’expression XPath spécifiée
<value> Quelconque Valeur d’un nœud XML lorsqu’un seul nœud correspond à l’expression XPath spécifiée
[<xml-node1>, <xml-node2>, ...]
-or-
[<value1>, <value2>, ...]
Array Tableau contenant des nœuds ou valeurs XML qui correspondent à l’expression XPath spécifiée

Exemple 1

À la suite de l’exemple 1, cet exemple recherche les nœuds qui correspondent au nœud <count></count> et ajoute ces valeurs de nœud avec la fonction sum() :

xpath(xml(parameters('items')), 'sum(/produce/item/count)')

Et retourne ce résultat : 30

Exemple 2

Pour cet exemple, les deux expressions recherchent des nœuds qui correspondent au nœud <location></location>, dans les arguments spécifiés, notamment XML avec un espace de noms. Les expressions utilisent le caractère de barre oblique inverse (\) comme caractère d’échappement pour le guillemet double (").

  • Expression 1

    xpath(xml(body('Http')), '/*[name()=\"file\"]/*[name()=\"location\"]')

  • Expression 2

    xpath(xml(body('Http')), '/*[local-name()=\"file\" and namespace-uri()=\"http://contoso.com\"]/*[local-name()=\"location\"]')

Voici les arguments :

  • Ce code XML, qui inclut l’espace de noms du document XML, xmlns="http://contoso.com" :

    <?xml version="1.0"?> <file xmlns="http://contoso.com"> <location>Paris</location> </file>
    
  • L’une ou l’autre des expressions XPath ici :

    • /*[name()=\"file\"]/*[name()=\"location\"]

    • /*[local-name()=\"file\" and namespace-uri()=\"http://contoso.com\"]/*[local-name()=\"location\"]

Voici le nœud obtenu qui correspond au nœud <location></location> :

<location xmlns="https://contoso.com">Paris</location>

Exemple 3

À la suite de l’exemple 3, cet exemple recherche la valeur du nœud <location></location> :

xpath(xml(body('Http')), 'string(/*[name()=\"file\"]/*[name()=\"location\"])')

Et retourne ce résultat : "Paris"

Notes

Il est possible d’ajouter des commentaires dans des expressions de flux de données, mais pas dans des expressions de pipeline.

Pour la liste des variables système que vous pouvez utiliser dans des expressions, voir variables système.