Rad sa stupcima formule
Stupci formule su stupci koji prikazuju izračunatu vrijednost u tablici servisa Microsoft Dataverse. Formule upotrebljavaju Power Fx, moćan programski jezik koji je prilagođen ljudima. Izgradite formulu u stupcu formula servisa Dataverse na isti način na koji biste izgradili formulu u programu Microsoft Excel. Dok tipkate, Intellisense predlaže funkcije i sintaksu, pa čak i pomaže u ispravljanju pogrešaka.
Dodavanje stupca formule
Prijavite se u Power Apps na adresi https://make.powerapps.com.
Odaberite Tablice, a zatim odaberite tablicu u koju želite dodati stupac formule. Ako stavka nije u bočnom oknu, odaberite …Više a zatim odaberite željenu stavku.
Odaberite područje Stupci, a zatim odaberite Novi stupac.
Unesite sljedeće podatke:
- Azaslonsko imeza stupac.
- Neobavezno, unesite Opis stupca.
Za Vrsta podataka odaberite fx Formula.
Upišite formulu ili upotrijebite prijedloge formula:
Unesite formulu Power Fx u okvir Formula . Dodatne informacije: Upišite formulu
- Odaberite dodatna svojstva:
- Odaberite Mogućnost pretraživanja ako želite da ovaj stupac bude dostupan u prikazima, grafikonima, nadzornim pločama i naprednom pretraživanju.
- Napredne opcije:
- Ako se formula procjenjuje kao decimalna vrijednost, proširite Napredne mogućnosti da biste promijenili broj točaka preciznosti, između 0 i 10. Zadana vrijednost je 2.
- Odaberite Spremi.
Upišite formulu
Sljedeći primjer stvara stupac formule pod nazivom Ukupna cijena. Stupac Broj jedinica je vrsta podatka cijeli broj. Stupac Cijena je decimalni tip podataka.
Stupac formule prikazuje rezultat stupca Cijena pomnoženo s Brojem jedinica.
Formula koju ste unijeli određuje vrstu stupca. Nakon što stvorite stupac ne možete promijeniti njegov naziv. To znači da formulu možete promijeniti nakon što stvorite stupac samo ako ne promijeni vrstu stupca.
Na primjer, formula cijena * popust stvara vrstu stupca broj. Možete promijeniti cijenu * popust u cijenu * (popust + 10%) jer to ne mijenja vrstu stupca. Međutim, ne možete promijeniti cijenu * popust u Tekst(cijena * popust) jer bi to zahtijevalo promjenu vrste stupca u niz.
Učitavanje prijedloga formula (pretpregled)
[Ova tema spada u dokumentaciju predizdanja i podložna je promjenama.]
Opišite što želite da formula radi i dobijte rezultate generirane umjetnom inteligencijom. Prijedlozi formula prihvaćaju unos vašeg prirodnog jezika za tumačenje i predlaganje formule Power Fx pomoću AI modela temeljenog na GPT-u.
Važno
To je značajka pretpregleda dostupna samo u regijama SAD-a.
Značajke pretpregleda nisu namijenjene u proizvodne svrhe i mogu imati ograničene funkcije. Te su značajke dostupne prije službenog izdavanja da bi se klijentima omogućio prijevremeni pristup i slanje povratnih informacija.
Trenutačno su podržani prijedlozi formula koji upućuju na jednu tablicu. Prijedlozi formula koji upućuju na stupac u povezanoj tablici nisu podržani.
Preduvjeti
Da biste omogućili ovu značajku, morate omogućiti postavku okruženja AI prijedloga za stupce formule. Dodatne informacije: prijedlozi umjetne inteligencije za stupce formule
Primjer unosa prirodnog jezika
Zamislite da postoji stupac Ocjena korisnika koji prikazuje njihovu ocjenu po računu.
U okvir Dohvati prijedloge formule unesite formulu na prirodnom jeziku, kao što je Ako je ocjena u stupcu ocjene jednaka ili veća od 5, označite kao Dobar, a ako je manje od 5, označite kao Prosjek, a ako je vrijednost prazna ili nula, prikažite kao Loše, a zatim odaberite gumb sa strelicom (enter).
Zatim kopirajte predloženu formulu.
I zalijepite ga u okvir Upišite formulu . Odaberite Spremi.
Evo kako se formula pojavljuje kada se zalijepi.
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"
)
Provjerite izračunati stupac formule Opis ocjene koji izgleda ovako.
Odgovorna umjetna inteligencija
Informacije o odgovornoj umjetnoj inteligenciji potražite u sljedećim resursima:
- Najčešća pitanja za izradu aplikacija i tablica putem razgovora
- Često postavljana pitanja o odgovornom korištenju umjetne inteligencije u Power Apps
Operatori
U stupcu formule možete upotrijebiti sljedeće operatore:
+, -, *, /, %, u, točno, &
Dodatne informacije potražite u odjeljku Operatori u sustavu Power Apps.
Vrste podataka
U stupcu formule možete prikazati sljedeće vrste podataka:
- SMS
- Decimalni broj
- Izbor Da/Ne (boolean)
- Datum i vrijeme
- Cijeli broj
Vrste podataka valuta i izbor (nekadašnji skupovi mogućnosti) trenutno nisu podržane.
Vrste funkcija
U stupcu formule možete upotrijebiti sljedeće vrste funkcija:
- Decimal
- String
- Booleov
- Skup mogućnosti
- Datum i vrijeme (TZI)
- DateTime (lokalno korisničko mjesto) (ograničeno na usporedbe s drugim korisničkim lokalnim vrijednostima DateAdd i DateDiff funkcijama)
- DateTime (samo datum) (ograničeno na usporedbe s drugim vrijednostima samo datuma, funkcijama DateAdd i DateDiff)
- Valuta
- Cijeli broj, promaknut u decimalni
Funkcije
U stupcu formule možete upotrijebiti skalarne funkcije:
Tekst *
Decimala *
* Funkcije Tekst i Vrijednost rade samo s cijelim brojevima, gdje nema decimalnog razdjelnika. Decimalni separator razlikuje se ovisno o lokalitetu. Budući da se stupci formula procjenjuju bez poznavanja jezika, ne postoji način za pravilno tumačenje ili generiranje decimalnog razdjelnika.
* Argument StartOfWeek nije podržan za funkcije WeekNum i Weekday u stupcima formule.
Primjer funkcije
Opis | Primjer |
---|---|
Dohvaćanje vrijednosti datuma. | DateAdd(UTCNow(),-1,TimeUnit.Years) |
Stvaranje stupca decimalne formule
Stvorite stupac formule koji vraća decimalni broj.
- Kada stvarate stupac, unesite sljedeće podatke:
- Azaslonsko imeza stupac.
- Neobavezno, unesite Opis stupca.
- Za Vrsta podataka odaberite fx Formula.
- Unesite formulu koja vraća numeričku vrijednost u traku formule . U ovom se primjeru stvara stupac formule pod nazivom Ukupni iznos. Stupac cijena po jedinici decimalnog je tipa podataka.
- Proširite Dodatne mogućnosti, odaberite Decimalno kao vrstu podataka Formula, a zatim postavite potreban broj decimalnih mjesta.
- Odaberite Spremi.
Stvaranje stupca formule cijelog broja
Stvorite stupac formule koji vraća cijeli broj.
- Kada stvarate stupac, unesite sljedeće podatke:
- Azaslonsko imeza stupac.
- Neobavezno, unesite Opis stupca.
- Za Vrsta podataka odaberite fx Formula.
- Unesite formulu koja vraća numeričku vrijednost u traku formule . U ovom se primjeru stvara stupac formule pod nazivom Broj jedinica. Stupci Ukupna cijena i cijena po jedinici decimalnog su tipa podataka.
- Proširite Dodatne mogućnosti i odaberite Cijeli broj kao vrstu podataka Formula i postavite potreban oblik za stupac cijelog broja.
- Odaberite Spremi.
Smjernice i ograničenja
U ovom se odjeljku opisuju smjernice i poznata ograničenja sa stupcima Dataverse formule.
Provjere upotrebe polja valute
- Stupci formule ne podržavaju korištenje stupca valute povezane tablice u formuli, kao u ovom primjeru.
- Izravna upotreba stupaca valute i tečaja u formuli trenutno nije podržana. Korištenje stupaca valute i tečaja postiže se funkcijom
Decimal
, kao što jeDecimal(currency column)
iliDecimal(exchange rate)
. FunkcijaDecimal
osigurava da je izlaz unutar prihvaćenog raspona. Ako vrijednost stupca valute ili tečaja premašuje prihvaćeni raspon, formula vraća null. - Stupci osnovne valute nisu podržani u izrazima stupaca formule jer su to sistemski stupci koji se koriste u svrhu izvješćivanja. Ako želite sličan rezultat, možete koristiti vrstu stupca valute zajedno s kombinacijom stupaca tečaja kao
CurrencyField_Base = (CurrencyField / ExchangeRate)
.
Provjere upotrebe stupaca datuma i vremena
- Ponašanje stupaca formule datuma i vremena može se ažurirati samo kada se ne koristi u drugom stupcu formule.
- Za stupce formule datuma i vremena, dok koristite funkciju
DateDiff
, provjerite sljedeće:- Stupac lokalnog ponašanja korisnika ne može se uspoređivati niti koristiti sa stupcem
DateTime(TZI)/DateOnly
ponašanja. - Stupci lokalnog ponašanja korisnika mogu se usporediti ili koristiti samo s drugim stupcem lokalnog ponašanja korisnika.
DateTime(TZI)
Stupci ponašanja mogu se usporediti ili koristiti uDateDiff
funkcijama s drugimDateTime(TZI)/DateOnly
stupcem ponašanja.DateOnly
stupci ponašanja mogu se usporediti ili koristiti u funkciji DateDiff s drugimDateTime(TZI)/DateOnly
stupcem ponašanja.
- Stupac lokalnog ponašanja korisnika ne može se uspoređivati niti koristiti sa stupcem
- Stupci datuma i vremena i funkcije
UTCNow()
Now()
datuma i vremena ne mogu se proslijediti kao parametar funkcijama niza.
Upotreba stupca formule u poljima skupne vrijednosti
- Jednostavan stupac formule je mjesto gdje formula koristi stupce iz istog zapisa ili koristi čvrsto kodirane vrijednosti. Za stupce skupne vrijednosti stupci formule moraju biti jednostavni stupci formule, kao što je ovaj primjer stupca skupne vrijednosti.
- Stupac formule koji ovisi o vremenski ograničenim funkcijama
UTCNow()
iUTCToday()
ne može se koristiti u polju skupne vrijednosti.
Power Fx Preporuke za tekstualne funkcije
Stupci formule ne podržavaju
Text()
funkcije s jednim argumentom vrste Broj. Broj može biti cijeli, decimalni ili valutni.Stupci formule ne podržavaju korištenje brojeva u sljedećim konfiguracijama:
- U funkcijama niza. To su funkcije niza postavljene gdje god se očekuje tekstni argument: Gornji, Donji, Lijevo, Desno, Ulančanje, Srednji, Len, StartsWith, EndsWith, TrimEnds, Trim, Trim, Zamjena i Zamijeni.
- U implicitnim formulama, kao što su
12 & "foo"
, ili12 & 34
, ili"foo" & 12
. - Interna prisila s broja na tekst nije podržana. Preporučujemo korištenje
Text(Number, Format)
za pretvaranje broja u tekst. U slučaju kadaString
se argument prosljeđuje u funkcijiText
, tada argumentFormat
nije podržan. - Evo primjera korištenja
Text
funkcije za pretvaranje broja u tekst i dodavanje niza na njega:
Concatenate(Text(123,"#"),"ab") Text(123,"#") & "foo"
Tokeni za oblikovanje specifični za regionalnu regiju, kao što su "." i "", nisu podržani u stupcima formule.
Provjere valjanosti raspona u stupcima formule
- Ne možete postaviti svojstva Minimalna vrijednost ili Maksimalna vrijednost stupca formule.
- Svi interni izračuni trebali bi se nalaziti unutar raspona Dataverse za stupce formule decimalnog tipa od (-100000000000 do 100000000000).
- Čvrsto kodirana vrijednost doslovnosti unesena u traku formule trebala bi se nalaziti unutar raspona Dataverse .
- Ako postoji numerički stupac koji je null, tada se smatra 0 u međuoperaciji. Na primjer,
a+b+c and If a = null, b=2, c=3
tada stupac formule0 + 2 + 3 = 5
daje.- Ovo se ponašanje razlikuje od izračunatih stupaca u ovom slučaju jer izračunati stupci daju
null + 2 + 3 = null
.
- Ovo se ponašanje razlikuje od izračunatih stupaca u ovom slučaju jer izračunati stupci daju
Opće provjere valjanosti stupaca formule
- Stupci formule mogu se pozivati na druge stupce formule, ali stupac formule ne može se pozivati na sebe.
- Stupci formule ne podržavaju cikličke lance, kao što su
F1 = F2 + 10, F2 = F1 * 2
. - Maksimalna duljina izraza formule u stupcima formule je 1.000 znakova.
- Maksimalna dopuštena dubina u stupcima formule je 10. Dubina se definira kao lanac stupaca formule koji se odnose na druge stupce formule ili skupne vrijednosti.
- Na primjer,
table E1, F1 = 1*2, table E2, F2 - E1*2
. U ovom primjeru, dubina F2 je 1.
- Na primjer,
- U aplikacijama stvorenim prema modelu sortiranje je onemogućeno na:
- Stupac formule koji sadrži stupac povezane tablice.
- Stupac formule koji sadrži logički stupac (na primjer, stupac adrese).
- Stupac formule koji sadrži drugi izračunati stupac ili stupac formule.
- Stupac formule koji koristi vremenski ograničenu funkciju
UTCNow()
.
- Stupci vrste Cijeli broj s formatom Jezik, Trajanje, Vremenska zona nisu podržani u stupcima formule.
- Stupci vrste Niz s formatom E-pošta, Tekstno područje, Simbol indeksa, URL nisu podržani u stupcima formule.
- Stupci formule ne prikazuju vrijednosti kada je aplikacija u izvanmrežnom načinu rada za mobilne uređaje.
- Ne možete pokrenuti tijekove rada ili dodatke u stupcima formule.
- Ne preporučujemo upotrebu izračunatih stupaca u stupcima formule i obrnuto.
- Pravila otkrivanja duplikata ne pokreću se u stupcima formule.
- Funkcija
Now
se može koristiti sa stupcima formule.Now()
ima lokalno ponašanje korisnika iUTCNow()
ponašanje neovisno o vremenskoj zoni. - Možete postaviti svojstvo preciznosti za decimalne stupce.
- Zadana vrijednost vrste podataka formule postavljena je na Decimalno za formule koje vraćaju brojčanu vrijednost.
- Ažuriranje formata stupca formule cijelog broja nije podržano.
Power Fx Funkcije koje trenutno nisu podržane
- Napredno
- Sqrt
- Exp
- Ln
- ^ (operater)
Stupci formule vrsta podataka koji se ne mogu proizvesti
- Izbori (osim izbora da/ne)
- Valuta