Skapa uttryck med hjälp av Power Fx
Power Fx är ett lågkodsformelspråk som använder formler ungefär som Excel. Använd Power Fx för att skapa komplex logik som gör att dina copilots kan ändra data. En Power Fx formel kan till exempel ange värdet för en variabel, parsa en sträng eller använda ett uttryck i ett villkor. Mer information finns i Power Fx-översikten och formelreferens.
Kommentar
Power Fx formler som använder numrering i Copilot Studio amerikansk stil. Decimalavgränsaren är en punkt eller punkt som i 12,567.892
. Detta innebär att Power Fx parametrar måste separeras av kommatecken (,).
Förutsättningar
Använd variabler i en formel
Om du vill använda en variabel i en Power Fx-formel måste du lägga till ett prefix till dess namn för att ange variabelns omfattning:
- För systemvariabler, använd
System.
- För globala variabler, använd
Global.
- För ämnesvariabler, använd
Topic.
Om du till exempel vill använda systemvariabeln Conversation.Id
i en formel refererar du till systemvariabeln som System.Conversation.Id
.
Använd bokstavliga värden i en formel
Förutom att använda variabler i en Power Fx formel kan du ange literala värden. Om du vill använda ett literalt värde i en formel måste du ange värdet i det format som motsvarar dess typ. I följande tabell visas datatyperna och formatet för motsvarande literalvärden.
Type | Formatexempel |
---|---|
String | "hi" , "hello world!" , "copilot" |
Booleskt | Endast true eller false |
Antal | 1 , 532 ,, 5.258 -9201 |
Rekord och tabell | [1] , [45, 8, 2] , ["cats", "dogs"] , { id: 1 } ,, { message: "hello" } { name: "John", info: { age: 25, weight: 175 } } |
DateTime | Time(5,0,23) , Date(2022,5,24) , DateTimeValue("May 10, 2022 5:00:00 PM") |
Alternativ | Stöds inte |
Tom | Endast Blank() |
Vanliga Power Fx formler
I följande tabell visas datatyper och motsvarande Power Fx formler som ska användas med den datatypen.
Använd Power Fx för att ange en variabel
I det här exemplet lagrar och matar ett Power Fx uttryck ut kundens namn med versaler.
Skapa ett ämne och lägg till en fråga nod.
För Ange ett meddelande anger du "Vad är ditt namn?".
Under Identitet, välj entiteten Personnamn.
Välj rutan under Spara svar som och välj variabeln
Var1
och ge den namnetcustomerName
.Under noden Fråga, välj + och sedan Ange ett variabelvärde.
Välj rutan under Ange variabel och välj Skapa en ny och ge den namnet
capsName
.I rutan Till värde välj > pilen och sedan fliken Formel.
I rutan fx ange
Upper(Text(Topic.customerName))
och sedan Infoga.Under noden Fråga väljer du + och sedan Skicka ett meddelande.
Ange "HELLO", Välj {x} och sedan Välj
capsName
.
Använda Power Fx-formel som ett villkor
Om du vill utvärdera mer komplexa uttryck konfigurerar du in Villkor noder så att Power Fx-formler används.
I det här exemplet avgör copilot om ett bokningsdatum kvalificerar sig för en rabatt. Detta gör du genom att kontrollera om det bokningsdatum som angetts av kunden är 14 dagar eller mer från det aktuella datumet.
Skapa ett ämne och lägg till en fråga nod.
För Ange ett meddelande anger du "Bokningsdatum?".
Under Identitet, välj entiteten Datum och tid.
Välj rutan under Spara svar som och välj variabeln
Var1
och ge den namnetbookingDate
.Välj den Lägg till nod under noden Fråga och väljsedan Lägg till ett villkor.
Välj den Mer (...) i noden Villkor och sedan VäljÄndra till formel.
I rutan Funktion välj > pilen och sedan fliken Formel.
Ersätt innehållet i rutan fx med formeln
Topic.bookingDate > (DateAdd (Now(), 14))
och välj Infoga.Under noden Villkor lägger du till noden Meddelande och anger meddelandet "Du är berättigad till rabatt".
Under noden Alla andra villkor lägger du till noden Meddelande och anger meddelandet "Tyvärr, du är inte berättigad till rabatt".