Partager via


Créer des expressions avec Power Fx

Power Fx est un langage low-code qui utilise des formules de type Excel. Utilisez Power Fx pour créer une logique complexe qui permet à vos agents de manipuler des données. Par exemple, une formule Power Fx peut définir la valeur d’une variable, analyser une chaîne ou utiliser une expression dans une condition. Pour en savoir plus, voir la Vue d’ensemble Power Fx et la référence sur les formules.

Note

Les formules Power Fx dans Copilot Studio utilisent une numérotation au format américain. Autrement dit, le séparateur décimal est un point, comme dans 12,567.892. Autrement dit, les paramètres Power Fx doivent être séparés par des virgules (,).

Conditions préalables

Utiliser des variables dans une formule

Pour utiliser une variable dans une formule Power Fx, vous devez ajouter un préfixe à son nom pour indiquer l‘étendue de la variable :

Par exemple, pour utiliser la variable système Conversation.Id dans une formule, reférez-vous à la variable système en tant que System.Conversation.Id.

Capture d’écran du volet Entrer une formule avec une expression contenant une variable système.

Utiliser des valeurs littérales dans une formule

En plus d’utiliser des variables dans une formule Power Fx, vous pouvez saisir des valeurs littérales. Pour utiliser une valeur littérale dans une formule, vous devez saisir la valeur dans le format correspondant à son type : Le tableau suivant répertorie les types de données et le format de leurs valeurs littérales correspondantes.

Type Exemples de format
String "hi", "hello world!", "copilot"
Valeur booléenne Uniquement true ou false
Chiffre 1, 532, 5.258,-9201
Enregistrement et table [1], [45, 8, 2], ["cats", "dogs"], { id: 1 }, { message: "hello" }, { name: "John", info: { age: 25, weight: 175 } }
DateHeure Time(5,0,23), Date(2022,5,24), DateTimeValue("May 10, 2022 5:00:00 PM")
Option Non pris en charge
Vide Uniquement Blank()

Formules courantes Power Fx

Le tableau suivant répertorie les types de données et les formules Power Fx correspondantes à utiliser pour ce type de données.

Type Formules Power Fx
String Fonction Text
Fonctions Concat et Concatenate
Fonction Len
Fonctions Lower, Upper et Proper
Fonctions IsMatch, Match et MatchAll
Fonctions StartsWith et EndsWith
Fonction Find
Fonctions Replace et Substitute
Valeur booléenne Fonction Boolean
Fonctions And, Or et Not
Fonctions If et Switch
Chiffre Fonctions Decimal, Float et Value
Fonctions Int, Round, RoundDown, RoundUp et Trunc
Enregistrement et table Fonctions Concat et Concatenate
Fonctions Count, CountA, CountIf et CountRows
Fonction ForAll
Fonctions First, FirstN, Index, Last et LastN
Fonctions Filter, Search et LookUp
Fonction JSON
Fonction ParseJSON
DateHeure Fonctions Date, DateTime et Time
Fonctions DateValue, TimeValue et DateTimeValue
Fonctions Day, Month, Year, Hour, Minute, Second et Weekday
Fonctions Now, Today, IsToday, UTCNow, UTCToday et IsUTCToday
Fonctions DateAdd, DateDiff et TimeZoneOffset
Fonction Text
Vide Fonctions Blank, Coalesce, IsBlank et IsEmpty
Fonctions Error, IfError, IsError et IsBlankOrError

Utiliser Power Fx pour définir une variable

Dans cet exemple, une Power Fx expression stocke et génère le nom du client en majuscules.

  1. Créez une rubrique et ajoutez un nœud Question.

  2. Pour Entrer un message, entrez « Quel est votre nom ? ».

  3. Sous Identifier, sélectionnez l’entité Nom de la personne.

  4. Sélectionnez la zone sous Enregistrer la réponse sous, puis sélectionnez la variable Var1 et nommez-la customerName.

  5. Sous le nœud Question, sélectionnez +, puis Définir une valeur de variable.

  6. Sélectionnez la zone sous Définir la variable, puis sélectionnez Créer et nommez-la capsName.

  7. Dans la zone Vers la valeur, sélectionnez la flèche >, puis sélectionnez l’onglet Formule.

  8. Dans la zone fx, saisissez Upper(Text(Topic.customerName)), puis sélectionnez Insérer.

    Capture d’écran d’une formule Power Fx dans un nœud Définir une variable avec l’onglet Formule en surbrillance.

  9. Sous le nœud Question, sélectionnez +, puis Envoyer un message.

  10. Saisissez « BONJOUR », sélectionnez {x}, puis sélectionnez capsName.

    Capture d’écran du nœud Message avec un message défini.

Utiliser une formule Power Fx comme condition

Pour évaluer des expressions plus complexes, configurez les nœuds Condition pour utiliser les formules Power Fx.

Dans cet exemple, le agent détermine si une date de réservation donne droit à une remise. Pour ce faire, il vérifie si la date de réservation fournie par le client est de 14 jours ou plus à partir de la date actuelle.

  1. Créez une rubrique et ajoutez un nœud Question.

  2. Pour Entrer un message, entrez « Date de réservation ? ».

  3. Sous Identifier, sélectionnez l’entité Date et heure.

  4. Sélectionnez la zone sous Enregistrer la réponse sous, puis sélectionnez la variable Var1 et nommez-la bookingDate.

    Capture d’écran d’un nœud de Question avec une entité de date et d’heure choisie et une variable définie.

  5. Sélectionnez l’icône Ajouter un nœud sous le nœud Question, puis sélectionnez Ajouter une condition.

  6. Sélectionnez l’icône Plus () du nœud Condition, puis sélectionnez Modifier dans la formule.

  7. Dans la zone Fonction, sélectionnez la flèche >, puis sélectionnez l’onglet Formule.

  8. Remplacez le contenu de la zone fx par la formule Topic.bookingDate > (DateAdd (Now(), 14)), puis sélectionnez Insérer.

  9. Sous le nœud Condition , ajoutez un nœud Message et saisissez le message "Vous avez droit à une remise".

  10. Sous le nœud Toutes les autres conditions , ajoutez un nœud Message et entrez le message « Désolé, vous ne pouvez pas bénéficier d’une remise ».

    Capture d’écran des nœuds de message conditionnels.