Udostępnij za pośrednictwem


Tworzenie wyrażeń za pomocą usługi Power Fx

Power Fx to język z małą ilością kodu, który używa formuł podobnych do formuł programu Excel. Użyj Power Fx do tworzenia złożonej logiki agenta przy użyciu formuł do manipulowania danymi. Na przykład formuła Power Fx może ustawić wartość zmiennej, przeanalizować ciąg lub użyć wyrażenia w warunku. Aby uzyskać więcej informacji, zobacz omówienie języka Power Fx i dokumentację formuł.

Notatka

Formuły Power Fx w usłudze Copilot Studio używają numerowania w stylu amerykańskim. To oznacza, że separator dziesiętny to kropka, na przykład 12,567.892. Oznacza to, że należy używać przecinków (,) jako separatorów parametrów dla formuł Power Fx.

Wymagania wstępne

Użyj zmiennych w formule

Aby używać zmiennej w formule Power Fx, należy dodać prefiks do jego nazwy, aby wskazać zakres zmiennej:

Na przykład aby uwzględnić zmienną systemową Conversation.Id w formule, odnieś się do zmiennej systemowej jako System.Conversation.Id.

Zrzut ekranu okienka Wprowadź formułę z wyrażeniem zawierającym zmienną systemową.

Używanie wartości literałów w formule

Oprócz używania zmiennych w formułach Power Fx można wprowadzać wartości literałów. Aby użyć wartości literału w formule, należy wprowadzić ją w formacie odpowiadającym jej typowi. W poniższej tabeli przedstawiono typy danych i format ich odpowiednich wartości literałów.

Typ Przykłady formatów
Sznurek `"hi", "hello world!", "copilot"`
logiczny Tylko true lub false
telefonu 1, , 532, , 5.258-9201
Tabele i rekordy [1], , [45, 8, 2], ["cats", "dogs"], { id: 1 }, , { message: "hello" }{ name: "John", info: { age: 25, weight: 175 } }
Data i Czas Time(5,0,23), Date(2022,5,24), DateTimeValue("May 10, 2022 5:00:00 PM")
Opcja wyboru Nieobsługiwane
Pusta Tylko Blank()

Popularne formuły Power Fx

W poniższej tabeli wymieniono typy danych i formuły Power Fx, których można używać z każdym typem danych.

Typ Formuła Power Fx
Sznurek Funkcj Text
Funkcje Concat i Concatenate
Funkcja Len
Funkcje Lower, Upper i Proper
Funkcje IsMatch, Match i MatchAll
Funkcja EndsWith i StartsWith
Funkcja Find
Funkcja zastąpienia i zastępowania
logiczny Funkcja logiczna
Funkcje And, Or i Not
Funkcje If i Switch
telefonu Funkcje Liczba dziesiętna, Liczba zmiennoprzecinkowa i Wartość
Funkcje Int, Round, RoundDown, RoundUp i Trunc
Tabele i rekordy Funkcje Concat i Concatenate
Funkcja Count, CountA, CountIf i CountRows
Funkcja ForAll
Funkcje First, FirstN, Index, Last i LastN
Funkcje Filter i LookUp
Funkcja JSON
Funkcja ParseJSON
Data i Czas Funkcje Date, DateTime i Time
Funkcje DateValue, TimeValue i DateTimeValue
Funkcje Day, Month, Year, Hour, Minute, Second i Weekday
Funkcje Now, Today, IsToday, UTCNow, UTCToday i IsUTCToday
Funkcje DateAdd, DateDiff i TimeZoneOffset
Funkcj Text
Pusta Funkcje Blank, Coalesce, IsBlank i IsEmpty
Funkcje Error, IfError, IsError, IsBlankOrError

Użyj Power Fx, by ustawić wartość zmiennej

W tym przykładzie wyrażenie Power Fx przechowuje i wyświetla nazwę klienta wielkimi literami.

  1. Utwórz temat i dodaj węzeł Pytanie.

  2. W polu Wpisz wiadomość wpisz „Jak masz na imię?”.

  3. W obszarze Zidentyfikuj wybierz encję Imię i nazwisko osoby.

  4. Zaznacz pole Zapisz odpowiedź użytkownika jako, a następnie wybierz zmienną Var1 i nadaj jej nazwę customerName.

  5. W węźle Pytanie wybierz + i wybierz pozycję Ustaw wartość zmiennej.

  6. Zaznacz pole w obszarze Ustaw zmienną, a następnie wybierz pozycję Utwórz nową i nadaj jej nazwę capsName.

  7. W polu Do wartości wybierz strzałkę >, a następnie wybierz kartę Formuła.

  8. W polu fx wprowadź Upper(Text(Topic.customerName)), a następnie wybierz pozycję Wstaw.

    Zrzut ekranu formuły Power Fx w węźle Ustawianie zmiennej i wyróżnioną kartą Formuła.

  9. W węźle Pytanie wybierz + i wybierz pozycję Wyślij wiadomość.

  10. Wpisz „HELLO”, wybierz {x}, a następnie wybierz capsName.

    Zrzut ekranu węzła wiadomości ze zdefiniowaną wiadomością.

Używanie formuły Power Fx jako warunku

Aby oceniać bardziej złożone warunki, należy skonfigurować węzły Warunek w celu używania formuł Power Fx.

W tym przykładzie agent określa, czy data rezerwacji kwalifikuje się do rabatu. W tym celu sprawdza, czy podany przez klienta data rezerwacji to 14 dni lub więcej od aktualnej daty.

  1. Utwórz temat i dodaj węzeł Pytanie.

  2. W polu Wprowadź wiadomość wpisz „Data rezerwacji?".

  3. W obszarze Zidentyfikuj wybierz encję Data i godzina.

  4. Zaznacz pole Zapisz odpowiedź użytkownika jako, a następnie wybierz zmienną Var1 i nadaj jej nazwę bookingDate.

    Zrzut ekranu węzła pytania z wybraną datą i godziną oraz zestawem zmiennych.

  5. Wybierz ikonę Dodaj węzeł poniżej węzła Pytanie, a następnie wybierz Dodaj warunek.

  6. Wybierz ikonę Więcej (...), w węźle Warunek wybierz następnie wybierz Zmień na formułę.

  7. W polu Funkcja wybierz strzałkę >, a następnie wybierz kartę Formuła.

  8. Zastąp zawartość pola fx formułą Topic.bookingDate > (DateAdd (Now(), 14)), a następnie wybierz Wstaw.

  9. Pod węzłem Warunek dodaj węzeł Wiadomość i wprowadź komunikat „Kwalifikujesz się do zniżki”.

  10. Pod węzłem Wszystkie inne warunki dodaj węzeł Wiadomość i wprowadź komunikat „Przepraszam, nie kwalifikujesz się do zniżki”.

    Zrzut ekranu przedstawiający warunkowe węzły Wiadomości.