Udostępnij za pośrednictwem


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, potężnego, ale przyjaznego dla człowieka języka 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ę do 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 wybierz pozycję Nowa kolumna .

  4. Wprowadź następujące informacje:

    • Awyświetlana nazwa kolumny.
    • Opcjonalnie wprowadź Opis kolumny.
  5. W polu Typ danych wybierz pozycję fx Formula.

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

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


  1. Wybierz dodatkowe właściwości:
    • Wybierz opcję Z możliwością wyszukiwania, jeśli chcesz, aby ta kolumna była dostępna w widokach, wykresach, pulpitach nawigacyjnych i szukaniu zaawansowanym.
    • Opcje zaawansowane:
      • Jeśli formuła daje w wyniku wartość dziesiętną, rozwiń węzeł Opcje zaawansowane, aby zmienić liczbę punktów precyzji z zakresu od 0 do 10. Domyślna wartość wynosi 2.
  2. Wybierz pozycję Zapisz.

Wpisz formułę

W poniższym przykładzie tworzona jest kolumna z formułą o nazwie Cena całkowita. Kolumna Liczba jednostek jest typem danych liczby całkowitej. Kolumna Cena jest typem danych dziesiętnych.

Zrzut ekranu przedstawiający definicję kolumny formuły.

W kolumnie z formułą wyświetlany jest wynik ceny pomnożony przez liczbę jednostek.

Zrzut ekranu przedstawiający rekord z kolumną z formułą.

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

Na przykład formuła cena * rabat tworzy typ kolumny liczby. Możesz zmienić cenę * rabat na cenę * (rabat + 10%), ponieważ nie zmienia to typu kolumny. Nie można jednak zmienić ceny * rabatu 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. Sugestie w formułach zaakceptować wprowadzenie języka naturalnego w celu zinterpretowania i sugestii formuły Power Fx za pomocą 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ę, musisz włączyć ustawienie środowiska Sugestie AI dla kolumn z formułami . Więcej informacji: Sugestie AI dotyczące kolumn z formułami

Przykład wprowadzania danych w języku naturalnym

Wyobraź sobie, że istnieje kolumna Ocena klienta, która pokazuje jego ocenę według konta. Przykładowa kolumna z ocenami klientów

W polu Pobierz sugestie formuł wprowadź formułę w języku naturalnym, na przykład Jeśli ocena w kolumnie oceny jest równa lub większa niż 5, oznacz ją jako Dobra, a jeśli jest mniejsza niż 5, oznacz ją jako Średnia, a jeśli wartość jest pusta lub zero, wyświetl ją jako Nieprawidłowa, a następnie wybierz przycisk strzałki (Wprowadź).

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

I wklej go w polu Wpisz formułę . Wybierz pozycję Zapisz. Wklej formułę w polu 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ź kolumnę z formułą Opis obliczonej oceny, która wygląda następująco.

Sprawdzanie wyników w kolumnie z 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:
+, -, *, /, %, w, dokładny, &

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

Typy danych

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

Więcej informacji: Tworzenie kolumn z formułami z typami danych dziesiętnych, liczbami całkowitymi, liczbami zmiennoprzecinkowymi i wyborami\

Typ danych waluta nie jest obecnie obsługiwany.

Typy funkcji

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

  • Dziesiętne
  • String
  • Wartość logiczna
  • Opcja wyboru
  • 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)
  • Currency
  • Liczbowy całkowity

Funkcje

Aby zapoznać się z funkcjami skalarnymi, których można używać w kolumnie z formułą, przejdź do artykułu Odwołanie do formuły — Dataverse kolumny formuł.

* Funkcje Tekst i Wartość działają tylko z liczbami całkowitymi, w których nie jest używany 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.

* Argument StartOfWeek nie jest obsługiwany w przypadku funkcji WeekNum i Weekday w kolumnach formuły.

Przykład funkcji

Podpis 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 z formułą z nieobsługiwaną formułą Konto.Roczny przychód
  • Bezpośrednie korzystanie z kolumn waluty i kursów wymiany w formułach jest obecnie nieobsługiwane. Korzystanie z kolumn walutowych i kursów walutowych odbywa się za Decimal pomocą funkcji, takiej jak Decimal(currency column) lub Decimal(exchange rate). Funkcja Decimal upewnia się, że dane wyjściowe mieszczą 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. Jeśli chcesz uzyskać podobny wynik, możesz użyć typu kolumny waluty wraz z kombinacją kolumn kursu wymiany jako 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 z formułą typu data i godzina podczas korzystania z DateDiff tej funkcji upewnij się, że:
    • Nie można porównywać kolumny Zachowanie lokalne użytkownika ani używać jej z kolumną DateTime(TZI)/DateOnly zachowania.
    • Kolumny zachowania lokalne użytkownika można porównywać lub używać tylko z inną kolumną zachowania lokalną użytkownika.
    • DateTime(TZI) Kolumny Zachowanie mogą być porównywane lub używane w DateDiff funkcjach z inną DateTime(TZI)/DateOnly kolumną Zachowanie.
    • DateOnly Kolumny zachowania mogą być porównywane lub używane w funkcji DateDiff z inną DateTime(TZI)/DateOnly kolumną zachowania. Nieobsługiwana konfiguracja daty i godziny z kolumną z formułą
  • Kolumny daty i godziny oraz funkcje UTCNow() Now() daty i godziny nie mogą być przekazywane jako parametr do funkcji ciągów. Kolumna formuły z nieobsługiwanym parametrem daty i godziny przekazanym w formule

Użycie kolumny formuły w polach zestawienia

  • Prosta kolumna z formułą to taka, w której formuła używa kolumn z tego samego rekordu lub używa zakodowanych na stałe wartości. W przypadku kolumn zestawienia kolumny formuł muszą być prostymi kolumnami formuł, na przykład jak w tej kolumnie zestawienia. Przykładowa prosta kolumna z formułą dla kolumny zestawieniaPrzykładowa konfiguracja kolumny zestawienia
  • Kolumna z formułą, która jest zależna od funkcji UTCNow() ograniczonych czasowo i UTCToday() nie może być używana w polu zestawienia.

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

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

  • 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 formułach niejawnych, takich jak 12 & "foo", lub 12 & 34, lub "foo" & 12.
    • Numer wewnętrzny do wymuszania tekstu nie jest obsługiwany. Zalecamy użycie Text(Number, Format) do konwersji liczby na tekst. W przypadku, gdy String argument jest przekazywany Text w funkcji, Format argument nie jest obsługiwany.
    • Oto przykład użycia Text tej funkcji w celu przekonwertowania liczby na tekst i dołączenia do niej 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 specyficzny dla ustawień regionalnych przekazany jako parametr do funkcji Text w formule

Sprawdzanie poprawności zakresu kolumn formuł

  • Nie można ustawić właściwości Wartość minimalna ani Wartość maksymalna kolumny z formułą.
  • 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,następnie a+b+c and If a = null, b=2, c=3 kolumna formuły daje 0 + 2 + 3 = 5.
    • To zachowanie różni się od kolumn obliczeniowych w tym przypadku, ponieważ kolumny obliczeniowe dają 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 z formułami nie obsługują łańcuchów cyklicznych, takich jak 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 z formułami odwołujący się do innych kolumn z formułami lub kolumnami zestawień.
    • Na przykład, table E1, F1 = 1*2, table E2, F2 - E1*2. W tym przykładzie głębokość F2 wynosi 1.
  • W aplikacjach opartych na modelu sortowanie jest wyłączone w następujących obszarach:
    • Kolumna formuły zawierająca kolumnę powiązanej tabeli.
    • Kolumna formuły zawierająca kolumnę logiczną (na przykład kolumnę adresu).
    • Kolumna formuł zawierająca inną kolumnę obliczaną lub kolumnę formuły.
    • Kolumna z formułą, która korzysta z funkcji ograniczonej w czasie UTCNow().
  • 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ł.
  • Tej Now funkcji można używać z kolumnami z formułami. Now() Ma lokalne zachowanie użytkownika i UTCNow() ma zachowanie niezależne od strefy czasowej.
  • Dla kolumn dziesiętnych można ustawić właściwość dokładności.
  • Domyślna wartość typu danych formuły jest ustawiona na Dziesiętny dla formuł zwracających wartość liczbową.
  • Aktualizowanie formatu kolumny z formułą liczb całkowitych nie jest obsługiwane.

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

  • Currency

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