Praca z kolumnami formuł

Kolumny formuł to kolumny, w których jest wyświetlana wartość obliczana w Microsoft Dataverse tabeli. Formuły używają Power Fx, przyjazne dla ludzi języki programowania. Utwórz formułę w kolumnie z formułą Dataverse w taki sam sposób, w jaki tworzysz formułę w programie Microsoft Excel. Po wpisaniu sugeruje funkcje i składnię, a nawet pomaga to naprawić błędy.

Dodaj kolumnę formuły

  1. Zaloguj się w Power Apps na https://make.powerapps.com.

  2. Wybierz Tabele, a następnie wybierz tabelę, do której chcesz dodać kolumnę z formułą. Jeśli elementu nie ma w okienku panelu bocznego, wybierz …Więcej, a następnie wybierz żądany element.

  3. Wybierz obszar Kolumny, a następnie Nowa kolumna.

  4. Wprowadź następujące informacje:

    • Nazwa wyświetlana kolumny.
    • Opcjonalnie wpisz Opis kolumny.
  5. Jako Typ danych wybierz fx Formula.

  6. Wpisz formułę lub użyj sugestii dotyczących formuł:

    Wprowadź formułę Power Fx w polu Formuła. Więcej informacji: Typy formuł


  1. Wybierz dodatkowe właściwości:
    • Wybierz Z możliwością wyszukiwania, jeśli chcesz, aby ta kolumna była dostępna w widokach, wykresach, pulpitach nawigacyjnych i w Wyszukiwaniu zaawansowanym.
    • Opcje zaawansowane:
      • Jeśli w formule jest obliczana wartość dziesiętna, rozwiń Opcje zaawansowane w celu zmiany liczby miejsc dziesiętnych (dokładności) od 0 do 10. Domyślna wartość wynosi 2.
  2. Wybierz pozycję Zapisz.

Wpisz formułę

W następującym przykładzie przedstawiono kolumnę formuły o nazwie Łączna cena. Kolumna Liczba jednostek to typ danych o liczbie pełnej. Kolumna Cena to typ danych dziesiętnych.

Zrzut ekranu z definicją kolumny z formułą.

W kolumnie formuły jest wyświetlany wynik ceny z wartością Liczba jednostek.

Zrzut ekranu rekordu z kolumną z formułą.

Wprowadzona formuła określa typ kolumny. Nie możesz zmienić typu kolumny po utworzeniu kolumny. Oznacza to, że możesz zmienić formułę po utworzeniu kolumny tylko wtedy, gdy nie zmienia to typu kolumny.

Na przykład formuła cena * rabat tworzy typ kolumny numeru. Możesz zmienić formułę cena * rabat na cena * (rabat +10%), ponieważ nie zmienia to typu kolumny. Jednak nie można zmienić formuły cena * rabat na Text(cena * rabat), ponieważ wymagałoby to zmiany typu kolumny na ciąg.

Pobierz sugestie formuły (wersja zapoznawcza)

[Ten temat pochodzi ze wstępnej wersji dokumentacji i może ulec zmianie.]

Opisz, co ma robić formuła i uzyskaj wygenerowane wyniki przez AI. Funkcja sugestii formuł akceptuje opis w języku naturalnym, interpretuje go i generuje sugestię formuły Power Fx, korzystając z modelu AI opartego na technologii GPT.

Ważne

Ta funkcja jest dostępna w wersji zapoznawczej tylko w regionach USA.

Funkcje w wersji zapoznawczej nie są przeznaczone do użytku w środowiskach produkcyjnych i mogą mieć ograniczoną funkcjonalność. Te funkcje są udostępniane przed oficjalnym wydaniem, dzięki czemu klienci mogą szybciej uzyskać do nich dostęp i przekazać opinie na ich temat.

Obecnie są obsługiwane sugestie formuł odwołujące się do jednej tabeli. Sugestie formuły odwołującej się do kolumny w powiązanej tabeli nie są obsługiwane.

Wymagania wstępne

Aby włączyć tę funkcję, należy włączyć ustawienie środowiska sugestie AI dla kolumn formuły. Więcej informacji: Sugestie AI do formuły kolumn

Przykład wprowadzania danych w języku naturalnym

Załóżmy, że jest kolumna Klasyfikacja klientów , która pokazuje ich klasyfikację według kont. Przykładowa kolumna klasyfikacji klienta

W polu Pobierz sugestie formuły wprowadź formułę w języku naturalnym, na przykład Jeśli ocena w kolumnie klasyfikacji jest równa lub większa niż 5, pokaż Dobrze, a jeśli mniejsza niż 5, pokaż Średnio, a jeśli wartość jest pusta, pokaż Źle, a następnie wybierz przycisk strzałki (Enter).

Następnie skopiuj Zasugerowaną formułę. Sugerowana formuła

I wklej go do pola Wpisz formułę . Wybierz pozycję Zapisz. Wklej formułę do pola Wpisz formułę.

Oto, jak formuła jest wyświetlana po wklejeniu.

Switch(
    ThisRecord.'Customer Rating',
    Blank(), "Bad",
    0, "Bad",
    1, "Average",
    2, "Average",
    3, "Average",
    4, "Average",
    5, "Good",
    6, "Good",
    7, "Good",
    8, "Good",
    9, "Good",
    10, "Good"
)

Sprawdź obliczoną kolumnę Opis oceny, która może wyglądać w następujący sposób.

Sprawdzanie wyników w kolumnie formuł

Odopowiedzialne AI

Aby uzyskać informacje o odpowiedzialnym używaniu AI, przejdź do tych zasobów:

Operatory

W kolumnie formuły można używać następujących operatorów:
+, -, *, /, %, in, exactin, &

Aby uzyskać więcej informacji, przejdź do tematu Operatory w Power Apps.

Typy danych

W kolumnie z formułą możesz wyświetlić następujące typy danych:

  • Tekst
  • Liczba dziesiętna
  • Wybór Tak/Nie (wartość logiczna)
  • Datetime

Typy danych waluta, liczby całkowite i wybór (dawniej zestawy opcji) nie są obecnie obsługiwane.

Typy funkcji

W kolumnie z formułą możesz używać następujących typów funkcji:

  • Dziesiętne
  • Ciąg
  • Wartość logiczna
  • Zestaw opcji
  • Data/godzina (TZI)
  • Data/godzina (lokalny użytkownik) (ograniczone do porównywania z innymi wartościami lokalnymi użytkownika i funkcjami DateAdd i DateDiff)
  • Data/godzina (tylko data) (ograniczone do porównywania z innymi wartościami tylko daty i funkcjami DateAdd i DateDiff)
  • Waluta
  • Liczba całkowita z wartością dziesiętną

Funkcje

W kolumnie z formułą możesz użyć następujących funkcji skalarnych:

Abs

And

Day

Value *

If

Int

Len

Max

Mid

Min

Mod

Not

Or

Sum

Text *

* Funkcje Text i Value działają tylko z liczbami całkowitymi, przy użyciu których nie jest zaangażowany separator dziesiętny. Separator dziesiętny jest zmienny w różnych lokalizacjach regionalnych. Ponieważ kolumny formuł są obliczane bez znajomości lokalizacji, nie można prawidłowo zinterpretować ani wygenerować separatora dziesiętnego.

Przykład funkcji

Popis Przykład
Pobierz wartość daty. DateAdd(UTCNow(),-1,TimeUnit.Years)

Wytyczne i ograniczenia

W tej sekcji opisano wytyczne i znane ograniczenia dotyczące kolumn formuł w Dataverse.

Sprawdzanie poprawności użycia pól walutowych

  • Kolumny z formułami nie obsługują używania w formule kolumny waluty pokrewnej tabeli, tak jak w tym przykładzie. Kolumna Formuła z nieobsługiwaną formułą Konto.Przychód roczny
  • Bezpośrednie korzystanie z kolumn waluty i kursów wymiany w formułach jest obecnie nieobsługiwane. Korzystanie z kolumn waluty i kursów wymiany jest możliwe za pośrednictwem funkcji Decimal, jak np. Decimal(currency column) lub Decimal(exchange rate). Funkcja Decimal zapewnia, że wynik znajduje się w akceptowanym zakresie. Jeśli wartość kolumny waluty lub kursu wymiany przekracza akceptowany zakres, formuła zwraca wartość null.
  • Kolumny podstawowe walut nie są obsługiwane w wyrażeniach kolumn formuł, ponieważ są to kolumny systemowe używane do celów raportowania. Aby uzyskać podobny rezultat, można użyć typu kolumny waluty wraz z kombinacją kolumn kursów wymiany: CurrencyField_Base = (CurrencyField / ExchangeRate)

Sprawdzanie poprawności użycia kolumn daty i godzin

  • Zachowanie kolumn formuły daty i czasu można zaktualizować tylko wtedy, gdy nie jest ono używane w innej kolumnie formuły.
  • W przypadku kolumn formuły daty i czasu podczas korzystania z funkcji DateDiff należy się upewnić, że:
    • Kolumny zachowania lokalnej użytkownika nie można porównać ani użyć z kolumną zachowania DateTime(TZI)/DateOnly.
    • Kolumny zachowania lokalne użytkownika można porównywać lub używać tylko z inną kolumną zachowania lokalną użytkownika.
    • Kolumny zachowania DateTime(TZI) mogą być porównywane lub używane w funkcjach z inną kolumną DateTime(TZI)/DateOnlyzachowania DateDiff.
    • Kolumny zachowania DateOnly mogą być porównywane lub używane w funkcjach DateDiff z inną kolumną zachowania DateTime(TZI)/DateOnly. Nieobsługiwana konfiguracja daty i czasu za pomocą kolumny formuły
  • Kolumny oraz funkcje daty i czasu UTCNow() Now() nie mogą być przekazywane jako pararmetry do funkcji ciągu. Kolumna Formuła z nieobsługiwanym parametrem daty i czasu przekazywanego w formule

Użycie kolumny formuły w polach zestawienia

  • W prostej kolumnie formuły są używane kolumny z tego samego rekordu lub wartości zapisane na dysku twardym. W przypadku kolumn zestawienia kolumny formuł muszą być prostymi kolumnami formuł, na przykład jak w tej kolumnie zestawienia. Przykładowa prosta kolumna formuły dla kolumny zestawienia Przykładowa konfiguracja kolumny zestawienia

Zalecenia dotyczące funkcji tekstu dla wyrażeń Power Fx

  • Kolumny formuł nie obsługują funkcji Text() z jednym argumentem typu Liczba. Liczbą może być liczbą całkowitą, dziesiętną lub walutą. Kolumna formuł z nieobsługiwaną funkcją tekstową z argumentem typu liczba

  • Kolumny formuł nie obsługują liczb w następujących konfiguracjach:

    • Funkcje ciągów. Są to funkcje ciągów mające zastosowanie tam, gdzie oczekiwanym argumentem jest tekst: Upper, Lower, Left, Right, Concatenate, Mid, Len, StartsWith, EndsWith, TrimEnds, Trim, Substitute i Replace.
    • W niejawnych formułach, takich jak 12 & "foo" lub 12 & 34 lub "foo" & 12.
    • Numer wewnętrzny do wymuszania tekstu nie jest obsługiwany. Zaleca się użycie funkcji Text(Number, Format) w celu przekonwertowania liczby na tekst. W przypadku, gdy argument typu String jest przekazywany do funkcji Text, argument Format nie jest obsługiwany.
    • Poniżej podano przykład użycia funkcji Text do przekonwertowania liczby na tekst i dołączania do niego ciągu:
    Concatenate(Text(123,"#"),"ab")
    Text(123,"#") & "foo"
    
  • Specyficzne dla ustawień regionalnych tokeny formatowania, takie jak „.” i „,”, nie są obsługiwane w kolumnach formuł. Nieobsługiwany token formatowania specyficznego dla ustawień regionalnych przekazywany jako parametr do funkcji Tekst w formule

Sprawdzanie poprawności zakresu kolumn formuł

  • Nie można ustawić właściwości Wartość minimalna lub Wartość maksymalna kolumny formuły.
  • Wszystkie obliczenia wewnętrzne powinny leżeć w zakresie Dataverse dla kolumn z formułami typu dziesiętnego (-100000000000 do 100000000000).
  • Zakodowane na stałe wartości literałów wprowadzane na pasku formuły powinny leżeć w zakresie Dataverse.
  • Jeśli istnieje kolumna numeryczna o wartości null, wówczas podczas operacji pośrednich jest brana za wartość 0. Na przykład dla formuły a+b+c and If a = null, b=2, c=3 kolumna formuły daje wartość 0 + 2 + 3 = 5.
    • To zachowanie jest inne niż dla kolumn obliczanych, dla których jest w tym przypadku null + 2 + 3 = null.

Ogólne sprawdzanie poprawności zakresu kolumn formuł

  • Kolumny formuł mogą odwoływać się do innych kolumn formuł, ale kolumna formuły nie może się odwoływać do samej siebie.
  • Kolumny formuł nie obsługują łańcuchów cyklicznych np. F1 = F2 + 10, F2 = F1 * 2.
  • Maksymalna długość wyrażenia formuły w kolumnach formuł wynosi 1000 znaków.
  • Maksymalna głębokość dozwolona w kolumnach formuł wynosi 10. Głębokość jest definiowana jako łańcuch kolumn formuł odwołujących się do innych formuł lub kolumn zestawienia.
    • Na przykład table E1, F1 = 1*2, table E2, F2 - E1*2. W tym przykładzie głębokość F2 wynosi 1.
  • Kolumny typu Numer cały z formatem Język, Czas trwania, Strefa czasowa nie są obsługiwane w kolumnach formuł.
  • Kolumny typu Ciąg z formatem Wiadomość e-mail, Obszar tekstu, Symbol znacznika i Adres URL nie są obsługiwane w kolumnach formuł.
  • Kolumny formuł nie wyświetlają wartości, kiedy aplikacja mobilna jest w trybie offline.
  • Nie można uruchamiać przepływów pracy ani wtyczek w kolumnach z formułami.
  • Nie zaleca się używania kolumn obliczanych w kolumnach formuł i na odwrót.
  • Reguły wykrycia duplikatów nie są wyzwalane w przypadku kolumn formuł.
  • Funkcja Now może być używana z kolumnami formuł. Funkcja Now() ma zachowanie lokalne dla użytkownika, a UTCNow() ma zachowanie niezależne od strefy czasowej.
  • Dla kolumn dziesiętnych można ustawić właściwość dokładności.

Funkcje Power Fx nie są obecnie obsługiwane

  • Power
  • Sqrt
  • Exp
  • Ln
  • ^ (operator)

Kolumny formuł typów danych, których nie można tworzyć

  • Liczbowy całkowity
  • Opcje (z wyjątkiem opcji Tak/Nie)
  • Waluta

Zobacz też

Typy kolumn

Omówienie rozwiązania Microsoft Power Fx

Formuła, kolumny obliczane i kolumny zestawień, w których jest używany kod