Lucrați cu coloane de formule
Coloanele de formule sunt coloane care afișează o valoare calculată într-un tabel Microsoft Dataverse. Formulele folosesc Power Fx, un limbaj de programare puternic, dar ușor de utilizat. Generați o formulă într-o coloana de formule Dataverse în același mod în care ați genera o formulă Microsoft Excel. Pe măsură ce tastați, Intellisense sugerează funcții și sintaxă și chiar vă ajută să remediați erorile.
Adăugarea unei coloane de formulă
Conectați-vă la Power Apps la https://make.powerapps.com.
Selectați Tabele, apoi selectați tabelul în care doriți să adăugați o coloană cu formulă. Dacă elementul nu se află în panoul lateral, selectați …Mai multe, apoi selectați elementul dorit.
Selectați zona Coloane și apoi selectați Coloană nouă.
Introduceţi informaţiile următoare:
- A Numele afișat pentru coloană.
- Opțional, introduceți o Descriere a coloanei.
Pentru Tipul de date selectați fx Formulă.
Introduceți formula sau utilizați sugestii de formule:
Introduceți Power Fx formula în caseta Formulă . Mai multe informații: Tastați o formulă
- Selectați proprietăți suplimentare:
- Selectați Căutare dacă doriți ca această coloană să fie disponibilă în vizualizări, diagrame, tablouri de bord și Căutare avansată.
- Opțiuni avansate:
- Dacă formula se evaluează la o valoare zecimală, extindeți Opțiuni avansate pentru a modifica numărul de puncte de precizie, între 0 și 10. Valoarea implicită este 2.
- Selectați Salvați.
Tastați o formulă
Următorul exemplu creează o coloană de formule numită Prețul total. Coloana Număr de unități este un tip de date cu număr complet. Coloana Preț este un tip de date zecimal.
Coloana de formule afișează rezultatul Preț înmulțit cu Număr de unități.
Formula introdusă determină tipul de coloană. Nu puteți schimba tipul unei coloane, după ce coloana a fost creată. Aceasta înseamnă că puteți schimba formula după ce ați creat coloana numai dacă nu schimbă tipul coloanei.
De exemplu, formula preț * reducere creează un tip de coloană număr. Puteți modifica prețul * reducere în prețul * (reducere + 10%) pentru că asta nu schimbă tip de coloană. Cu toate acestea, nu puteți modifica preț * reducere în Text(preț * reducere) deoarece ar necesita schimbarea tipul de coloană la șir.
Obțineți sugestii de formule (versiune preliminară)
[Acest subiect este documentație de prelansare și poate suferi modificări.]
Descrieți ce doriți să facă formula și obțineți rezultate generate de IA. Sugestiile de formule acceptă introducerea în limbaj natural pentru a interpreta și sugera o Power Fx formulă folosind modelul AI bazat pe GPT.
Important
Acesta este un caracteristică în regim de previzualizare disponibil numai în regiunile SUA.
Caracteristicile în regim de previzualizare nu sunt destinate utilizării în producție și pot avea funcționalitate restricționată. Aceste caracteristici sunt disponibile înainte de lansarea oficială, astfel încât clienții să poată obține acces din timp și să poată oferi feedback.
În prezent, sunt acceptate sugestiile de formule care fac referire la un singur tabel. Sugestiile de formule care fac referire la o coloană dintr-un tabel asociat nu sunt acceptate.
Cerințe preliminare
Pentru a activa această funcție, trebuie să activați setarea de mediu Sugestii AI pentru coloanele de formule . Mai multe informații: Sugestii AI pentru coloanele cu formule
Exemplu de intrare în limbaj natural
Imaginează-ți că există o coloană Evaluarea clienților care arată evaluarea acestora în funcție de cont.
În caseta Obțineți sugestii de formule introduceți formula în limbaj natural, cum ar fi Dacă evaluarea din coloana de evaluare este egală sau mai mare de 5, atunci indicați ca Bun și dacă mai puțin de 5 indică ca Medie și dacă valoarea este necompletat sau zero, atunci afișați ca Bad, apoi selectați butonul săgeată (enter).
Apoi copiați Formula sugerată.
Și inserați-l în caseta Tastați o formulă . Selectați Salvați.
Iată cum apare formula când este lipită.
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"
)
Verificați coloana calculată Descrierea evaluării formulă, care apare astfel.
AI responsabil
Pentru informații despre IA responsabilă, accesați aceste resurse:
- Întrebări frecvente pentru crearea de aplicații și tabele prin conversație
- Întrebări frecvente despre utilizarea responsabilă a inteligenței artificiale în Power Apps
Operators
Puteți utiliza următorii operatori într-o coloană de formule:
+, -, *, /, %, în, exactină, &
Pentru mai multe informații, accesați Operatori în Power Apps.
Tipuri de date
Puteți afișa următoarele tipuri de date într-o coloană de formule:
- SMS
- Numar decimal
- Alegere Da/Nu (Boolean)
- Datetime
- Număr întreg
Tipurile de date monedă și alegere (anterior seturi de opțiuni) nu sunt acceptate în prezent.
Tipuri de funcții
Puteți utiliza următoarele tipuri de funcții într-o coloană de formule:
- Zecimale
- Șir
- Boolean
- Set de opțiuni
- DatăOră (TZI)
- DateTime (Utilizator local) (limitat la comparații cu alte valori locale ale utilizatorului, funcțiile DateAdd și DateDiff)
- DateTime (numai pentru data) (limitat la comparații cu alte valori doar pentru dată, funcții DateAdd și DateDiff)
- Moneda
- Număr complet, promovat la zecimală
Funcții
Pentru funcțiile scalare pe care le puteți utiliza într-o coloană de formulă, accesați Referință de formulă - Dataverse coloane de formulă.
* Funcțiile Text și Valoare lucrează numai cu numere complete, unde nu este implicat niciun separator zecimal. Separatorul zecimal variază în funcție de setările regionale. Deoarece coloanele de formulă sunt evaluate fără cunoștințe despre setările regionale, nu există nicio modalitate de a interpreta sau genera corect separatorul zecimal.
* Argumentul StartOfWeek nu este acceptat pentru funcțiile WeekNum și Weekday în coloanele de formule.
Exemplu de funcție
Descriere | Exemplu |
---|---|
Preluați o valoare de dată. | DateAdd(UTCNow(),-1,TimeUnit.Years) |
Creați o coloană cu formulă zecimală
Creați o coloană cu formulă care returnează un număr zecimal.
- Când creați o coloană, introduceți următoarele informații:
- A Numele afișat pentru coloană.
- Opțional, introduceți o Descriere a coloanei.
- Pentru Tipul de date selectați fx Formulă.
- Introduceți o formulă care returnează o valoare numerică în bara Formulă . Acest exemplu creează o coloană cu formulă numită Suma totală. Coloana preț unitar este de tip zecimal de date.
- Extindeți Opțiuni avansate, selectați Decimal ca Tipul de date de formulă, apoi setați numărul necesar de zecimale.
- Selectați Salvați.
Creați o coloană cu formule de număr întreg
Creați o coloană cu formule care returnează un număr întreg.
- Când creați o coloană, introduceți următoarele informații:
- A Numele afișat pentru coloană.
- Opțional, introduceți o Descriere a coloanei.
- Pentru Tipul de date selectați fx Formulă.
- Introduceți o formulă care returnează o valoare numerică în bara Formulă . Acest exemplu creează o coloană cu formulă numită Număr de unități. Coloanele Preț total și preț unitar sunt de tip zecimal de date.
- Extindeți Opțiuni avansate și selectați Număr întreg ca Tipul de date de formulă și setați formatul necesar pentru coloana cu numere întregi.
- Selectați Salvați.
Orientări și limitări
Această secțiune descrie regulile și limitările cunoscute cu coloanele cu formule în Dataverse.
Validarea utilizării câmpurilor valutare
- Coloanele cu formulă nu acceptă utilizarea unei coloane aferente monedei tabelului în formulă, cum ar fi în acest exemplu.
- Utilizarea directă a coloanelor valutare și a cursului de schimb în formulă nu este acceptată în prezent. Utilizarea coloanelor valutare și cursului de schimb se realizează prin funcția
Decimal
, cum ar fiDecimal(currency column)
sauDecimal(exchange rate)
. FuncțiaDecimal
se asigură că rezultatul este în intervalul acceptat. Dacă valoarea coloanei valutar sau cursului de schimb depășește intervalul acceptat, atunci formula returnează nul. - Coloanele pentru moneda de bază nu sunt acceptate în expresiile coloanei cu formulă, deoarece sunt coloane de sistem utilizate în scopul raportării. Dacă doriți un rezultat similar, puteți utiliza un tip de coloană de valută împreună cu o combinație de coloane de curs de schimb ca
CurrencyField_Base = (CurrencyField / ExchangeRate)
.
Validări de utilizare a coloanelor de dată și oră
- Comportamentul coloanelor cu formulă dată și oră poate fi actualizat numai atunci când nu este utilizat într-o altă coloană cu formulă.
- Pentru coloanele cu formule date și oră, în timp ce utilizați funcția
DateDiff
, asigurați-vă că:- Coloana de comportament local al utilizatorului nu poate fi comparată sau utilizată cu o coloană de comportament
DateTime(TZI)/DateOnly
. - Coloanele de comportament local al utilizatorului pot fi comparate sau utilizate numai cu o altă coloană de comportament local al utilizatorului.
DateTime(TZI)
coloanele de comportament pot fi comparate sau utilizate înDateDiff
funcții cu o altă coloanăDateTime(TZI)/DateOnly
de comportament.DateOnly
coloanele de comportament pot fi comparate sau utilizate în funcția DateDiff cu o altă coloanăDateTime(TZI)/DateOnly
comportament.
- Coloana de comportament local al utilizatorului nu poate fi comparată sau utilizată cu o coloană de comportament
- Coloanele dată și oră și funcțiile dată și oră
UTCNow()
,Now()
nu pot fi transmise ca parametru la funcțiile șir.
Utilizarea coloanei de formule în câmpurile cumulate
- O coloană cu formulă simplă este locul în care formula utilizează coloane din aceeași înregistrare sau utilizează valori codificate greu. Pentru coloanele cumulate, coloanele cu formulă trebuie să fie simple coloane cu formulă, cum ar fi acest exemplu de coloană cumulativă.
- O coloană cu formulă care depinde de funcțiile legate în timp
UTCNow()
șiUTCToday()
nu poate fi utilizată într-un câmp de acumulare.
Power Fx recomandări pentru funcția text
Coloanele cu formule nu acceptă funcții
Text()
cu un singur argument de tip Number. Numărul poate fi întreg, zecimal sau monedă.Coloanele cu formule nu acceptă utilizarea numerelor în următoarele configurații:
- În funcțiile șir. Acestea sunt funcții șir plasate oriunde este așteptat un argument text: Upper, Lower, Left, Right, Concatenate, Mid, Len, StartsWith, EndsWith, TrimEnds, Trim, Substitute și Replace.
- În formulele implicite, cum ar fi
12 & "foo"
, sau12 & 34
, sau"foo" & 12
. - Coercirea numerelor interne la text nu este acceptată. Vă recomandăm să utilizați
Text(Number, Format)
pentru a converti un număr în text. În cazul în care unString
argument este transmis într-o funcțieText
, atunci argumentulFormat
nu este acceptat. - Iată un exemplu de utilizare a funcției
Text
pentru a converti un număr în text și pentru a adăuga un șir la acesta:
Concatenate(Text(123,"#"),"ab") Text(123,"#") & "foo"
Indicative de formatare specifice localității, cum ar fi „.” și "," nu sunt acceptate în coloanele de formule.
Validarea intervalului pe coloanele de formule
- Nu puteți seta proprietățile Valoare minimă sau Valoare maximă ale unei coloane cu formulă.
- Toate calculele interne ar trebui să se încadreze în intervalul Dataverse pentru coloanele cu formule de tip zecimal (-100000000000 până la 100000000000).
- O valoare literală codificată greu introdusă în bara de formule ar trebui să se încadreze în intervalul Dataverse .
- Dacă există o coloană numerică care este nulă, atunci este considerată 0 în operația intermediară. De exemplu,
a+b+c and If a = null, b=2, c=3
apoi coloana cu formule oferă0 + 2 + 3 = 5
.- Acest comportament este diferit de coloanele calculate în acest caz, deoarece coloanele calculate dau
null + 2 + 3 = null
.
- Acest comportament este diferit de coloanele calculate în acest caz, deoarece coloanele calculate dau
Validari generale pe coloanele formule
- Coloanele cu formulă pot face referire la alte coloane cu formulă, dar o coloană cu formulă nu poate face referire la sine.
- Coloanele cu formule nu acceptă lanțuri ciclice, cum ar fi
F1 = F2 + 10, F2 = F1 * 2
. - Lungimea maximă a expresiei formulei în coloanele cu formulă este de 1.000 de caractere.
- Adâncimea maximă permisă în coloanele cu formule este de 10. Adâncimea este definită ca lanțul de coloane cu formulă care se referă la alte coloane cu formulă sau cumulat.
- De exemplu,
table E1, F1 = 1*2, table E2, F2 - E1*2
. În acest exemplu, adâncimea lui F2 este 1.
- De exemplu,
- În aplicațiile bazate pe model, sortarea este dezactivată pe:
- O coloană cu formulă care conține o coloană dintr-un tabel asociat.
- O coloană cu formulă care conține o coloană logică (de exemplu, coloana cu adresă).
- O coloană cu formulă care conține o altă coloană calculată sau cu formulă.
- O coloană cu formulă care utilizează funcția legată în timp
UTCNow()
.
- Coloanele de tipul Număr întreg cu format Limbă, Durată, Fus orar nu sunt acceptate în coloanele cu formule.
- Coloanele de tipul String cu format E-mail, Text Area, Ticker Symbol, URL nu sunt acceptate în coloanele cu formule.
- Coloanele cu formule nu afișează valori atunci când aplicația este în modul offline pentru mobil.
- Nu puteți declanșa fluxuri de lucru sau plug-in-uri pe coloanele de formule.
- Nu vă recomandăm să folosiți coloane calculate în coloanele cu formule și invers.
- Regulile detectare dubluri nu sunt declanșate pe coloanele cu formule.
- Funcția
Now
poate fi utilizată cu coloane de formule.Now()
are un comportament local al utilizatorului șiUTCNow()
are un comportament independent de fusul orar. - Puteți seta proprietatea de precizie pentru coloanele zecimale.
- Valoarea implicită a tipului de date al formulei este setată la Decimal pentru formulele care returnează valori numerice.
- Actualizarea formatului coloanei cu formule de număr întreg nu este acceptată.
Power Fx funcții nu sunt acceptate în prezent
- Putere
- Sqrt
- Exp
- Ln
- ^ (operator)
Formule coloane de tipuri de date care nu pot fi produse
- Opțiuni (cu excepția opțiunii Da/Nu)
- Moneda