Képletoszlopok használata
A képletoszlopok olyan oszlopok, amelyek számított értéket jelenítenek meg egy Microsoft Dataverse táblában. A képletek egy hatékony, de emberbarát programozási nyelvet használnak Power Fx. A Dataverse képletoszlopaiban ugyanúgy hozhat létre képleteket, mint ahogyan azt a Microsoft Excel-ben is teszi. Az Intellisense gépelés során képleteket és szintaxisokat javasol, sőt segítséget nyújt a hibák kijavításában is.
Képletoszlop hozzáadása
Jelentkezzen be a kukac címre Power Apps https://make.powerapps.com.
Válassza a Táblák lehetőséget, majd jelölje ki azt a táblát, amelyhez képletoszlopot szeretne hozzáadni. Ha az elem nem az oldalsó panel ablaktábláján található, válassza a ... Továbbiak elemre, majd válassza ki a kívánt elemet.
Válassza az Oszlopok területet, majd válassza az Új oszlop lehetőséget .
Adja meg a következő információkat:
- A megjelenítendő név az oszlophoz.
- Ha szükséges, adja meg az oszlop leírását .
Az Adattípus beállításnál válassza az fx képlet lehetőséget.
Írja be a képletet, vagy használjon képletjavaslatokat:
Írja be a Power Fx képletet a Képlet mezőbe. További információ: Képlet beírása
- Válasszon további tulajdonságokat:
- Válassza a Kereshető lehetőséget , ha azt szeretné, hogy ez az oszlop elérhető legyen nézetekben, diagramokban, irányítópultokon és irányított keresésben.
- Speciális beállítások:
- Ha a képlet kiértékelése decimális érték, bontsa ki a Speciális beállítások csomópontot a pontossági pontok számának 0 és 10 közötti módosításához. Az alapértelmezett érték 2.
- Válassza a Mentés parancsot.
Képlet beírása
A következő példa létrehoz egy Teljes ár nevűképletoszlopot. Az Egységek száma oszlop egész szám adattípus. Az Ár oszlop decimális adattípusú.
A képletoszlop megjeleníti az Ár eredmény és az Egységek száma szorzatát.
Az oszloptípust a megadott képlet határozza meg. Az oszlop létrehozása után nem módosítható az oszlop típusa. Ez azt jelenti, hogy az oszlop létrehozása után csak akkor módosíthatja a képletet, ha az nem módosítja a oszloptípus.
Az ár * engedmény képlet például egy szám oszloptípus hoz létre. Módosíthatja az árat * kedvezmény árra * (kedvezmény + 10%) mert ez nem változtatja meg a oszloptípus. Az ár * kedvezmény azonban nem módosítható Szöveg (ár * kedvezmény) mert ehhez a oszloptípus karakterláncra kellene módosítani.
Képletjavaslatok kérése (előzetes verzió)
[Ez a témakör kiadás előtti dokumentáció, amely a későbbiekben változhat.]
Írja le, hogy mit szeretne tenni a képlettel, és szerezze be az AI által generált eredményeket. A képletjavaslatok elfogadják a természetes nyelvi bevitelt a képletek GPT-alapú AI-modell használatával történő értelmezéséhez és javaslatához Power Fx .
Fontos
Ez a előzetes funkció csak az Egyesült Államok régióiban érhető el.
Az előzetes funkciókat nem célszerű termelési környezetben használni, és előfordulhat, hogy korlátozott funkcionalitással rendelkeznek. Ezek a funkciók a hivatalos kiadás előtt érhetők el, hogy az ügyfelek korán megismerkedhessenek velük, és visszajelzést adhassanak róluk.
Jelenleg az egyetlen táblára hivatkozó képletjavaslatok támogatottak. A kapcsolódó tábla oszlopára hivatkozó képletjavaslatok nem támogatottak.
Előfeltételek
A funkció engedélyezéséhez engedélyeznie kell az AI-javaslatok képletoszlopokhoz környezeti beállítást. További információ: AI-javaslatok képletoszlopokhoz
Példa természetes nyelvi bevitelre
Képzelje el, hogy van egy Ügyfélértékelés oszlop, amely fiókonként jeleníti meg az értékelésüket.
A Képletjavaslatok beolvasása mezőbe írja be a képletet természetes nyelven, például: Ha a minősítési oszlopban szereplő minősítés egyenlő vagy nagyobb, mint 5, akkor jelezze Jó, ha 5-nél kisebb, akkor Átlag, ha pedig az érték üres vagy nulla, akkor jelenjen meg Rosszként , majd válassza a nyílgombot (enter).
Ezután másolja ki a javasolt képletet.
És illessze be a Írja be a képletet doboz. Válassza a Mentés parancsot.
Így jelenik meg a képlet beillesztéskor.
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"
)
Ellenőrizze a számított Értékelés leírása képlet oszlopot , amely így jelenik meg.
Felelősen alkalmazott mesterséges intelligencia
A felelős AI-val kapcsolatos információkért tekintse meg az alábbi forrásokat:
- Gyakori kérdések alkalmazások és táblázatok beszélgetésen keresztüli létrehozásához
- GYIK az AI felelősségteljes használatáról Power Apps
Operators
A képletoszlopban a következő operátorok használhatók:
+, -, *, /, %, in, exaktin, &
További információ: Operátorok Power Apps.
Adattípusok
A következő adattípusok jeleníthetők meg a képletoszlopban:
- Szöveges
- Tizedes tört
- Egész szám
- Lebeg
- Logikai Választás (igen/nem)
- Választási lehetőség (korábban értékkészletek)
- Datetime
További információ: Képletoszlopok létrehozása tizedesjegy, egész szám, lebegőpontos és választási lehetőség adattípussal\
A pénznem adattípus jelenleg nem támogatott.
Függvénytípusok
A következő képlettípusok jeleníthetők meg a képletoszlopban:
- Tizedesjegy
- Sztring
- Boolean
- Választási lehetőség
- DateTime (TZI)
- DateTime (felhasználó helyi) (más felhasználón belüli értékekkel, a DateAdd és a DateDiff függvénnyel való összehasonlításra korlátozva)
- DateTime (csak dátum) (más, csak dátumot tartalmazó értékekkel, a DateAdd és a DateDiff függvénnyel való összehasonlításra korlátozódik)
- Pénznem
- Egész szám
Függvények
A képletoszlopokban használható skaláris függvények esetében lépjen a Képlethivatkozás – képletoszlopok Dataverse részre.
* A Szöveg és az Érték függvény csak egész számokkal működik, tizedeselválasztó nélkül. A tizedes elválasztó a területi beállítások függvényében változik. Mivel a rendszer a képletoszlopokat a területi beállítás ismerete nélkül értékeli, nem lehet megfelelően értelmezni vagy létrehozni a tizedes elválasztót.
* A HétKezdeteHét argumentum nem támogatott a képletoszlopokban található WeekNum és Weekday függvények esetén.
Példa függvényre
Description | Példa |
---|---|
Dátumérték beolvasása. | DateAdd(UTCNow(),-1,TimeUnit.Years) |
Irányelvek és korlátozások
Ez a szakasz a képletoszlopok irányelveit Dataverse és ismert korlátozásait ismerteti.
Pénznemmezők használatának ellenőrzése
- A képletoszlopok nem támogatják a tábla kapcsolódó pénznemoszlopának használatát a képletben, mint ebben a példában.
- A pénznemoszlopok és az árfolyam közvetlen használata a képletben jelenleg nem támogatott. A pénznem- és árfolyamoszlopok használata a függvényen keresztül érhető el, például
Decimal
vagyDecimal(currency column)
Decimal(exchange rate)
. ADecimal
funkció ellenőrzi, hogy a kimenet az elfogadott tartományon belül van-e. Ha a pénznem vagy árfolyam oszlop értéke meghaladja az elfogadott tartományt, akkor a képlet null értéket ad vissza. - Az alappénznem oszlopai nem támogatottak a képletoszlop-kifejezésekben, mert jelentéskészítési célokra használt rendszeroszlopok. Ha hasonló eredményt szeretne, használhat pénznem oszloptípus árfolyamoszlop-kombinációval együtt
CurrencyField_Base = (CurrencyField / ExchangeRate)
.
Dátum, idő, oszlopok, használati érvényesítések,
- A dátum-idő képletoszlopok viselkedése csak akkor frissíthető, ha nem használják őket egy másik képletoszlopban.
- Dátum-idő képletoszlopok esetén a
DateDiff
függvény használata közben győződjön meg a következőkről:- A felhasználó helyi viselkedése oszlop nem hasonlítható össze és nem használható viselkedési
DateTime(TZI)/DateOnly
oszloppal. - A felhasználó helyi viselkedését tartalmazó oszlopok csak egy másik felhasználó helyi viselkedését tartalmazó oszloppal hasonlíthatók össze vagy használhatók.
DateTime(TZI)
A viselkedési oszlopok összehasonlíthatók vagy használhatók a függvényekbenDateDiff
egy másikDateTime(TZI)/DateOnly
viselkedési oszloppal.DateOnly
A viselkedési oszlopok összehasonlíthatók vagy használhatók a DateDiff függvényben egy másikDateTime(TZI)/DateOnly
viselkedési oszloppal.
- A felhasználó helyi viselkedése oszlop nem hasonlítható össze és nem használható viselkedési
- A dátum-idő oszlopok és a dátum-idő függvények
UTCNow()
Now()
nem adhatók át paraméterként a sztringfüggvényeknek.
Képletoszlop használata összesítő mezőkben
- Egyszerű képletoszlopról akkor beszélünk, ha a képlet ugyanabból a rekordból származó oszlopokat használ, vagy nem változtatható értékeket használ. Összesítő oszlopok esetén a képletoszlopoknak egyszerű képletoszlopoknak kell lenniük, mint amilyen ez a példa összesítő oszlop is.
- Képletoszlop, amely időhöz kötött függvényektől
UTCNow()
függ, ésUTCToday()
nem használható összesítő mezőben.
Power Fx Szövegfüggvényekre vonatkozó ajánlások
A képletoszlopok nem támogatják
Text()
az egyetlen Szám típusú argumentummal rendelkező függvényeket. A szám lehet egész, tizedes vagy pénznem.A képletoszlopok nem támogatják a számok használatát a következő konfigurációkban:
- A karakterlánc-függvényekben. Ezek olyan karakterláncfüggvények, amelyek ott helyezkednek el, ahol szöveges argumentum várható: Upper, Lower, Left, Right, Concatenate, Mid, Len, StartsWith, EndsWith, TrimEnds, TrimEnds, Trim, Substitute és Replace.
- Az implicit képletekben, például, vagy
12 & "foo"
12 & 34
, vagy"foo" & 12
. - A belső szám-szöveg kényszerítés nem támogatott. Javasoljuk, hogy használja a számot
Text(Number, Format)
szöveggé alakításához. Abban az esetben, ha egyString
argumentum egyText
függvényben van átadva, akkor azFormat
argumentum nem támogatott. - Íme egy példa arra, hogy a
Text
függvény használatával egy számot szöveggé alakíthat, és karakterláncot fűzhet hozzá:
Concatenate(Text(123,"#"),"ab") Text(123,"#") & "foo"
A területibeállítás-specifikus formázási tokenek, például a "." és a "," nem támogatottak a képletoszlopokban.
Tartományérvényesítés képletoszlopokon
- A képletoszlopok Minimális érték és Maximális érték tulajdonságai nem állíthatók be .
- Minden belső számításnak a Dataverse decimális típusú képletoszlopok (-100000000000–100000000000) tartományán belül kell lennie.
- A szerkesztőlécen megadott kódolt literális értéknek a Dataverse tartományon belül kell lennie.
- Ha van egy numerikus oszlop, amely null, akkor a köztes műveletben 0-nak számít. Például akkor
a+b+c and If a = null, b=2, c=3
a képletoszlop ad.0 + 2 + 3 = 5
- Ez a viselkedés ebben az esetben eltér a számított oszlopoktól, mert a számított oszlopok adnak
null + 2 + 3 = null
.
- Ez a viselkedés ebben az esetben eltér a számított oszlopoktól, mert a számított oszlopok adnak
Általános érvényesítés képletoszlopokon
- A képletoszlopok hivatkozhatnak más képletoszlopokra, de a képletoszlopok nem hivatkozhatnak saját magukra.
- A képletoszlopok nem támogatják a ciklikus láncokat, például
F1 = F2 + 10, F2 = F1 * 2
. - A képletoszlopokban a képletkifejezések maximális hossza 1 000 karakter.
- A képletoszlopokban megengedett maximális mélység 10. A mélység más képlet- vagy összesítő oszlopokra hivatkozó képletoszlopok láncolata.
- Például,
table E1, F1 = 1*2, table E2, F2 - E1*2
. Ebben a példában az F2 mélysége 1.
- Például,
- A modellvezérelt alkalmazásokban a rendezés le van tiltva:
- Egy képletoszlop, amely egy kapcsolódó tábla oszlopát tartalmazza.
- Logikai oszlopot (például címoszlopot) tartalmazó képletoszlop.
- Egy másik számított vagy képletoszlopot tartalmazó képletoszlop.
- Időhöz kötött függvényt
UTCNow()
használó képletoszlop.
- Az egész szám típusú, Nyelv, Időtartam, Időzóna formátumú oszlopok nem támogatottak a képletoszlopokban.
- A String típusú, E-mail, Szövegterület, Ticker szimbólum, URL formátumú oszlopok nem támogatottak a képletoszlopokban.
- A képletoszlopok nem jelenítenek meg értékeket, ha az alkalmazás mobile offline módban van.
- A képletoszlopokon nem aktiválhat munkafolyamatokat vagy beépülő modulokat.
- Nem javasoljuk számított oszlopok használatát a képletoszlopokban, és fordítva.
- Duplikált elemek észlelése szabályok nem aktiválódnak a képletoszlopokon.
- A
Now
függvény képletoszlopokkal használható.Now()
a felhasználó helyi viselkedésével ésUTCNow()
időzónától független viselkedéssel rendelkezik. - Beállíthatja a decimális oszlopok pontossági tulajdonságát.
- A képlet alapértelmezett adattípusának értéke Decimális a képleteket visszaadó numerikus értékek esetén.
- Az egész számképlet oszlopának formátuma nem támogatott.
Nem létrehozható adattípusok képletoszlopai
- Pénznem