Freigeben über


Ausdrücke mit Power Fx erstellen

Power Fx ist eine Low-Code-Sprache, die Formeln wie in Excel verwendet. Verwenden Sie Power Fx, um eine komplexe Logik zu erstellen, die es Ihren Copiloten ermöglicht, Daten zu manipulieren. Beispielsweise kann eine Power Fx-Formel den Wert einer Variablen festlegen, eine Zeichenfolge analysieren oder einen Ausdruck in einer Bedingung verwenden. Weitere Informationen finden Sie in der Power Fx-Übersicht und in der Formelreferenz.

Notiz

Power Fx-Formeln in Copilot Studio verwenden Nummerierung im US-Stil. Das heißt, das Dezimaltrennzeichen ist ein Punkt, wie in 12,567.892. Das bedeutet, dass Power Fx-Parameter durch Kommas (,) getrennt werden müssen.

Anforderungen

Verwenden von Variablen in einer Formel

Um eine Variable in einer Power Fx Formel zu verwenden, müssen Sie ihrem Namen ein Präfix hinzufügen, um den Gültigkeitsbereich der Variablen anzugeben:

Um beispielsweise die Systemvariable Conversation.Id in einer Formel zu verwenden, verweisen Sie als System.Conversation.Id darauf.

Screenshot des Fensters Formel eingeben mit einem Ausdruck, der eine Systemvariable enthält.

Literalwerte in einer Formel verwenden

Zusätzlich zur Verwendung von Variablen in einer Power Fx-Formel können Sie Literalwerte eingeben. Um einen Literalwert in einer Formel zu verwenden, müssen Sie ihn im entsprechenden Format des Typs eingeben. In der folgenden Tabelle sind die Datentypen und das Format ihrer entsprechenden Literalwerte aufgeführt.

typ Formatbeispiele
String "hi", "hello world!", "copilot"
Boolesch Nur true oder false
Number 1, 532, 5.258,-9201
Datensatz und Tabelle [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")
Auswahl Nicht unterstützt
Leer Nur Blank()

Gängige Power Fx Formeln

In der folgenden Tabelle sind Datentypen und entsprechende Power Fx Formeln aufgeführt, die mit diesem Datentyp verwendet werden können.

typ Power Fx-Formeln
String Funktion „Text“
Funktionen „Concat“ und „Concatenate“
Funktion „Len“
Lower-, Upper- und Proper-Funktionen
Funktionen „IsMatch“, „Match“ und „MatchAll“
Funktionen „EndsWith“ und „StartsWith“
Find-Funktion
Funktion „Replace“ und „Substitute“
Boolesch Funktion „Boolean“
Die Funktionen „And“, „Or“ und „Not“
Die Funktionen „If“- und „Switch“
Number Dezimal-, Gleitkomma- und Wertfunktionen
Funktionen „Int“ „Round“, „RoundDown“ „RoundUp“ und „Trunc“
Datensatz und Tabelle Funktionen „Concat“ und „Concatenate“
Funktionen „Count“, „CountA“, „CountIf“ und „CountRows“
Funktion „ForAll“
Die Funktionen „First“, „FirstN“, „Index“, „Last“ und „LastN“
Filter-, Search- und LookUp-Funktionen
JSON function
ParseJSON-Funktion
DateTime Date, DateTime und Time-Funktionen
Funktionen „DateValue“, „TimeValue“ und „DateTimeValue“
Funktionen „Day“, „Month“, „Year“, „Hour“, „Minute“, „Second“ und „Weekday“
Funktionen „Now“, „Today“, „IsToday“, „UTCNow“ und „UTCToday“, „IsUTCToday“
Die Funktionen „DateAdd“, „DateDiff“ und „TimeZoneOffset“
Funktion „Text“
Leer Die Funktionen „Blank“, „Coalesce“, „IsBlank“ und „IsEmpty“
Funktionen „Error“, „IfError“, „IsError“, „IsBlankOrError“

Power Fx verwende, um eine Variable festzulegen

In diesem Beispiel speichert ein Power Fx-Ausdruck den Namen des Kunden in Großbuchstaben und gibt ihn auch so aus.

  1. Erstellen Sie ein Thema, und fügen Sie einen Frageknoten hinzu.

  2. Geben Sie für Nachricht eingeben „Wie lautet Ihr Name?“ ein.

  3. Wählen Sie unter Identifizieren die Entität Personenname aus.

  4. Aktivieren Sie das Kontrollkästchen unter Antworten speichern als und dann die Variable Var1 aus, und benennen Sie sie in customerName um.

  5. Wählen Sie den Frageknoten, + und dann Als Variable festlegen aus.

  6. Aktivieren Sie das Kontrollkästchen unter Variable festlegen, wählen Sie dann Neu erstellen aus, und geben Sie ihr den Namen capsName.

  7. Wählen Sie im Feld Bis Wert den Pfeil > und dann die Registerkarte Formel aus.

  8. Geben Sie im Feld fx Upper(Text(Topic.customerName)) ein, und wählen Sie dann Einfügen aus.

    Screenshot einer Power Fx-Formel in einem Knoten Variable setzen, wobei die Registerkarte Formel hervorgehoben ist.

  9. Wählen Sie unter dem Frageknoten + und dann Nachricht senden aus.

  10. Geben Sie „HALLO“ ein, und wählen Sie {x} und dann capsName aus.

    Screenshot mit einem Nachrichtenknoten mit einer definierten Nachricht

Eine Power Fx-Formel als Bedingung verwenden

Um komplexere Ausdrücke auszuwerten, richten Sie Bedingungsknoten ein, um Power Fx-Formeln zu verwenden.

In diesem Beispiel ermittelt der Copilot, ob ein Buchungsdatum für einen Rabatt in Frage kommt. Dazu überprüft er, ob das vom Kunden angegebene Buchungsdatum 14 Tage oder mehr vom aktuellen Datum entfernt ist.

  1. Erstellen Sie ein Thema, und fügen Sie einen Frageknoten hinzu.

  2. Geben Sie für Nachricht eingeben „Buchungsdatum?“ ein.

  3. Wählen Sie unter Identifizieren die Entität Datum und Uhrzeit aus.

  4. Aktivieren Sie das Kontrollkästchen unter Antworten speichern als und dann die Variable Var1 aus, und benennen Sie sie in bookingDate um.

    Screenshot eines Frageknotens, für den eine Entität mit Datum und Uhrzeit ausgewählt und eine Variable festgelegt wurde.

  5. Wählen Sie das Symbol Knoten hinzufügen unter dem Knoten Frage aus, und wählen Sie dann Bedingung hinzufügen aus.

  6. Wählen Sie das Symbol Mehr () für den Knoten Bedingung und dann Zu Formel ändern aus.

  7. Wählen Sie im Feld Funktion den Pfeil > und dann die Registerkarte Formel aus.

  8. Ersetzen Sie den Inhalt des Felds fx durch die Formel Topic.bookingDate > (DateAdd (Now(), 14)), und wählen Sie dann Einfügen aus.

  9. Fügen Sie unter dem Knoten Bedingung einen Nachrichtenknoten hinzu, und geben Sie die Meldung "Sie haben Anspruch auf einen Rabatt " ein.

  10. Fügen Sie unter dem Knoten Alle anderen Bedingungen einen Nachrichtenknoten hinzu, und geben Sie die Meldung "Entschuldigung, Sie haben keinen Anspruch auf einen Rabatt " ein.

    Screenshot der bedingten Nachrichtenknoten