Udostępnij za pośrednictwem


Tworzenie wyrażeń regularnych 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. Służy Power Fx do tworzenia złożonej logiki, która umożliwia agentom manipulowanie 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ł.

Uwaga

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 również, że parametry języka Power Fx muszą być rozdzielone przecinkami (,).

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.

Type Przykłady formatów
String "hi", "hello world!", "copilot"
Wartość logiczna 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 } }
DateTime 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 odpowiadające im formuły Power Fx do użycia z danym typem danych.

Type Formuły Power Fx
String 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
Wartość logiczna 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 Trun
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
JSON function
Funkcja ParseJSON
DateTime 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 w obszarze Zapisz odpowiedź 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 w obszarze Zapisz odpowiedź 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.