Práca so stĺpcami vzorcov
Stĺpce vzorca sú stĺpce, ktoré zobrazujú vypočítanú hodnotu v tabuľke Microsoft Dataverse. Vzorce používajú Power Fx, výkonný, ale pre človeka priateľský programovací jazyk. Vytvorte vzorec v stĺpci vzorcov Dataverse rovnakým spôsobom, ako by ste vytvorili vzorec v programe Microsoft Excel. Počas písania Intellisense navrhuje funkcie a syntax a dokonca vám pomáha opraviť chyby.
Pridanie stĺpca vzorca
Prihláste sa na Power Apps at https://make.powerapps.com.
Vyberte Tabuľky a potom vyberte tabuľku, do ktorej chcete pridať stĺpec vzorca. Ak sa položka nenachádza na paneli bočného panela, vyberte …Viac a potom vyberte požadovanú položku.
Vyberte oblasť Stĺpce a potom vyberte Nový stĺpec.
Zadajte nasledujúce informácie:
- A Zobrazovaný názov pre stĺpec.
- Voliteľne zadajte Popis stĺpca.
Pre Typ údajov vyberte fx Vzorec.
Zadajte vzorec alebo použite návrhy vzorcov:
Do poľa Power Fx Vzorec zadajte vzorec . Ďalšie informácie: Zadajte vzorec
- Vyberte ďalšie vlastnosti:
- Vyberte Vyhľadateľné , ak chcete, aby bol tento stĺpec dostupný v zobrazeniach, grafoch, informačných paneloch a v rozšírenom vyhľadávaní.
- Rozšírené možnosti:
- Ak sa vzorec vyhodnotí ako desatinná hodnota, rozbaľte Rozšírené možnosti a zmeňte počet bodov presnosti medzi 0 a 10. Predvolená hodnota je 2.
- Vyberte položku Uložiť.
Zadať vzorec
Nasledujúci príklad vytvorí stĺpec vzorca s názvom Celková cena. Stĺpec Počet jednotiek je údaj typu celé číslo. Stĺpec Cena je desiatkový typ údajov.
V stĺpci vzorca sa zobrazuje výsledok Cena vynásobený Počet jednotiek.
Zadaný vzorec určuje typ stĺpca. Typ stĺpca nemôžete zmeniť po jeho vytvorení. To znamená, že vzorec môžete po vytvorení stĺpca zmeniť iba v prípade, že nezmení typ stĺpca.
Napríklad vzorec cena * zľava vytvorí stĺpcový typ čísla. Môžete zmeniť cenu * zľavu na cenu * (zľava + 10%) pretože to nemení typ stĺpca. Nemôžete však zmeniť cena * zľava na Text(cena * zľava) pretože to by vyžadovalo zmenu typ stĺpca na reťazec.
Získajte návrhy vzorcov (verzia Preview)
[Táto téma je predbežnou dokumentáciou a môže sa zmeniť.]
Popíšte, čo má vzorec robiť, a získajte výsledky generované AI. Návrhy vzorcov akceptujú váš vstup z prirodzeného jazyka na interpretáciu a navrhnutie Power Fx vzorca pomocou modelu AI založeného na GPT.
Dôležité
Toto je predbežná funkcia, ktorý je k dispozícii iba v regiónoch USA.
Funkcie ukážky nie sú určené na produkčné účely a môžu mať obmedzenú funkčnosť. Tieto funkcie sú k dispozícii pred oficiálnym vydaním, aby k nim mohli zákazníci získať rýchly prístup a poskytnúť odozvu.
V súčasnosti sú podporované návrhy vzorcov, ktoré odkazujú na jednu tabuľku. Návrhy vzorcov, ktoré odkazujú na stĺpec v súvisiacej tabuľke, nie sú podporované.
Požiadavky
Ak chcete povoliť túto funkciu, musíte povoliť nastavenie prostredia AI pre stĺpce vzorcov . Ďalšie informácie: Návrhy AI pre stĺpce vzorcov
Príklad vstupu do prirodzeného jazyka
Predstavte si, že existuje stĺpec Hodnotenie zákazníkov , ktorý zobrazuje ich hodnotenie podľa účtu.
Do poľa Získať návrhy vzorcov zadajte vzorec v prirodzenom jazyku, napríklad Ak je hodnotenie v stĺpci hodnotenia rovné alebo väčšie ako 5, potom označte ako Dobre a ak je menej ako 5, označte ako Priemer a ak je hodnota prázdna alebo nula, potom sa zobrazte ako Zlá a potom vyberte tlačidlo so šípkou (enter).
Potom skopírujte Navrhovaný vzorec.
A vložte ho do poľa Zadajte vzorec . Vyberte položku Uložiť.
Takto vyzerá vzorec po prilepení.
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"
)
Skontrolujte vypočítaný stĺpec Popis hodnotenia vzorca, ktorý vyzerá takto.
Zodpovedné používanie umelej inteligencie
Informácie o zodpovednej AI nájdete v týchto zdrojoch:
- Časté otázky týkajúce sa vytvárania aplikácií a tabuliek prostredníctvom konverzácie
- Časté otázky o zodpovednom používaní AI v Power Apps
Operators
V stĺpci vzorca môžete použiť nasledujúce operátory:
+, -, *, /, %, v, exaktný, &
Ďalšie informácie nájdete na stránke Operátori v Power Apps.
Typy údajov
V stĺpci vzorca môžete zobraziť nasledujúce typy údajov:
- SMS správa
- Desatinné číslo
- Celé číslo
- Plávať
- Booleovská voľba (áno/nie)
- Výber (predtým sady možností)
- Datetime
Ďalšie informácie: Vytvorte stĺpce vzorcov s desiatkovými, celými, pohyblivými a výberovými dátovými typmi\
Typ údajov meny momentálne nie je podporovaný.
Typy funkcie
V stĺpci vzorca môžete použiť nasledujúce typy funkcií:
- Desatinné
- String
- Boolean
- Voľba
- DateTime (TZI)
- DateTime (User local) (obmedzené na porovnanie s inými miestnymi hodnotami používateľa DateAdd a DateDiff funkciami)
- DateTime (len dátum) (obmedzené na porovnania s inými hodnotami iba dátumu, funkciami DateAdd a DateDiff)
- Mena
- Celé číslo
Funkcie
Pre skalárne funkcie, ktoré môžete použiť v stĺpci vzorca, prejdite na Odkaz na vzorec - Dataverse stĺpce vzorca.
* Funkcie Text a Hodnota fungujú iba s celými číslami, kde sa nepoužíva desatinný oddeľovač. Oddeľovač desatinných miest sa líši v závislosti od miestnych nastavení. Keďže sa stĺpce vzorcov vyhodnocujú bez znalosti miestnych nastavení, neexistuje spôsob, ako správne interpretovať alebo vygenerovať oddeľovač desatinných miest.
* Argument StartOfWeek nie je podporovaný pre funkcie WeekNum a Weekday v stĺpcoch vzorcov.
Príklad funkcie
Description | Príklad |
---|---|
Získajte hodnotu dátumu. | DateAdd(UTCNow(),-1,TimeUnit.Years) |
Smernice a obmedzenia
Táto časť popisuje pokyny a známe obmedzenia týkajúce sa stĺpcov vzorcov v Dataverse.
Overenie použitia polí meny
- Stĺpce vzorca nepodporujú použitie súvisiaceho stĺpca meny tabuľky vo vzorci, ako je to v tomto príklade.
- Priame použitie stĺpcov meny a výmenného kurzu vo vzorci momentálne nie je podporované. Použitie stĺpcov meny a výmenného kurzu je dosiahnuté pomocou funkcie
Decimal
, ako napríkladDecimal(currency column)
aleboDecimal(exchange rate)
. FunkciaDecimal
zabezpečuje, že výstup je v akceptovanom rozsahu. Ak hodnota stĺpca meny alebo výmenného kurzu presiahne akceptovaný rozsah, vzorec vráti hodnotu null. - Stĺpce základnej meny nie sú podporované vo výrazoch stĺpcov vzorcov, pretože ide o systémové stĺpce používané na účely prehľadov. Ak chcete podobný výsledok, môžete použiť typ stĺpca meny spolu s kombináciou stĺpca výmenného kurzu ako
CurrencyField_Base = (CurrencyField / ExchangeRate)
.
Overenie používania stĺpcov dátumu a času
- Správanie stĺpcov vzorca dátum a čas je možné aktualizovať len vtedy, keď sa nepoužíva v inom stĺpci vzorca.
- V prípade stĺpcov so vzorcom dátumu a času sa pri používaní funkcie
DateDiff
uistite, že:- Stĺpec miestneho správania používateľa nemožno porovnávať ani používať so stĺpcom správania
DateTime(TZI)/DateOnly
. - Stĺpce lokálneho správania používateľa je možné porovnať alebo použiť iba s iným stĺpcom lokálneho správania používateľa.
DateTime(TZI)
stĺpce správania možno porovnať alebo použiť voDateDiff
funkciách s iným stĺpcomDateTime(TZI)/DateOnly
správania.DateOnly
stĺpce správania možno porovnať alebo použiť vo funkcii DateDiff s iným stĺpcom správaniaDateTime(TZI)/DateOnly
.
- Stĺpec miestneho správania používateľa nemožno porovnávať ani používať so stĺpcom správania
- Stĺpce dátumu a času a funkcie dátumu a času
UTCNow()
,Now()
nemožno odovzdať ako parameter funkciám reťazca.
Použitie stĺpca vzorca v súhrnných poliach
- A jednoduchý stĺpec vzorca je miesto, kde vzorec používa stĺpce z rovnakého záznamu alebo používa pevne zakódované hodnoty. V prípade súhrnných stĺpcov musia byť stĺpce vzorcov jednoduché stĺpce vzorcov, ako je tento príklad súhrnného stĺpca.
- Stĺpec vzorca, ktorý je závislý od časovo ohraničených funkcií
UTCNow()
aUTCToday()
, nemožno použiť v súhrnnom poli.
Power Fx odporúčania textových funkcií
Stĺpce vzorcov nepodporujú
Text()
funkcie s jedným argumentom typu Číslo. Číslo môže byť celé, desatinné alebo mena.Stĺpce vzorcov nepodporujú používanie čísel v nasledujúcich konfiguráciách:
- Vo funkciách reťazcov. Ide o reťazcové funkcie umiestnené všade tam, kde sa očakáva textový argument: Upper, Lower, Left, Right, Concatenate, Mid, Len, StartsWith, EndsWith, TrimEnds, Trim, Substitute a Replace.
- V implicitných vzorcoch, ako napríklad
12 & "foo"
, alebo12 & 34
, alebo"foo" & 12
. - Nátlak na interné číslo na textovú správu nie je podporovaný. Na prevod čísla na text odporúčame použiť
Text(Number, Format)
. V prípade, že sa vo funkciiString
odošle argumentText
, argumentFormat
nie je podporovaný. - Tu je príklad použitia funkcie
Text
na konverziu čísla na text a pridanie reťazca k nemu:
Concatenate(Text(123,"#"),"ab") Text(123,"#") & "foo"
Tokeny formátovania špecifické pre miestne nastavenie, ako napríklad "." a "," nie sú podporované v stĺpcoch vzorcov.
Overenie rozsahu v stĺpcoch vzorcov
- Nemôžete nastaviť vlastnosti Minimálna hodnota alebo Maximálna hodnota v stĺpci vzorca.
- Všetky interné výpočty by mali ležať v rozsahu Dataverse pre stĺpce vzorcov desiatkového typu (-100000000000 až 100000000000).
- Pevne zakódovaná doslovná hodnota zadaná do riadka vzorcov by mala ležať v rozsahu Dataverse .
- Ak existuje číselný stĺpec, ktorý má hodnotu null, potom sa v medzioperačnej operácii považuje za 0. Napríklad
a+b+c and If a = null, b=2, c=3
potom stĺpec vzorca poskytne0 + 2 + 3 = 5
.- Toto správanie sa v tomto prípade líši od vypočítaných stĺpcov, pretože vypočítané stĺpce poskytujú hodnotu
null + 2 + 3 = null
.
- Toto správanie sa v tomto prípade líši od vypočítaných stĺpcov, pretože vypočítané stĺpce poskytujú hodnotu
Všeobecné overenia stĺpcov vzorcov
- Stĺpce vzorca môžu odkazovať na iné stĺpce vzorca, ale stĺpec vzorca nemôže odkazovať sám na seba.
- Stĺpce vzorcov nepodporujú cyklické reťazce, ako napríklad
F1 = F2 + 10, F2 = F1 * 2
. - Maximálna dĺžka výrazu vzorca v stĺpcoch vzorca je 1 000 znakov.
- Maximálna povolená hĺbka v stĺpcoch vzorcov je 10. Hĺbka je definovaná ako reťazec stĺpcov vzorca odkazujúcich na iné stĺpce vzorca alebo súhrnu.
- Napríklad
table E1, F1 = 1*2, table E2, F2 - E1*2
. V tomto príklade je hĺbka F2 1.
- Napríklad
- V modelom riadených aplikáciách je triedenie zakázané na:
- Stĺpec vzorca, ktorý obsahuje stĺpec súvisiacej tabuľky.
- Stĺpec vzorca, ktorý obsahuje logický stĺpec (napríklad stĺpec adresy).
- Stĺpec vzorca, ktorý obsahuje iný vypočítaný stĺpec alebo stĺpec vzorca.
- Stĺpec vzorca, ktorý používa časovo ohraničenú funkciu
UTCNow()
.
- Stĺpce typu Celé číslo s formátom Jazyk, Trvanie, Časové pásmo nie sú v stĺpcoch vzorcov podporované.
- V stĺpcoch vzorcov nie sú podporované stĺpce typu String s formátom Email, Text Area, Ticker Symbol, URL.
- Keď je aplikácia v mobilnom offline režime, v stĺpcoch vzorcov sa nezobrazujú hodnoty.
- V stĺpcoch vzorcov nemôžete spúšťať pracovné postupy ani doplnky.
- Neodporúčame používať vypočítané stĺpce v stĺpcoch vzorcov a naopak.
- Pravidlá hľadanie duplikátov sa nespúšťajú v stĺpcoch vzorcov.
- Funkciu
Now
možno použiť so stĺpcami vzorcov.Now()
má miestne správanie používateľa aUTCNow()
má správanie nezávislé od časového pásma. - Môžete nastaviť vlastnosť precision pre desiatkové stĺpce.
- Predvolená hodnota typu údajov vzorca je nastavená na Decimálne pre vzorce vracajúce číselné hodnoty.
- Aktualizácia formátu stĺpca vzorca s celým číslom nie je podporovaná.
Vzorcové stĺpce typov údajov, ktoré nie je možné vytvoriť
- Mena