Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
A következőkre vonatkozik: Vászonalapú alkalmazások
Copilot Studio
Desktop folyamatok
Modellalapú alkalmazások
Power Platform CLI
Dataverse-függvények
Táblázatot vagy rekordot formáz az oszlopok hozzáadásával, elvetésével, átnevezésével és kijelölésével.
A ForAll függvény a meglévő oszlopokból létrehozott új rekordokból álló tábla visszaadásával is formázhat egy táblát.
Áttekintés
Ezek a függvények az oszlopok módosításával alakítják ki a táblázatot vagy rekordot:
- Csökkentse a több oszlopot tartalmazó táblázatot vagy rekordot egyetlen oszlopra, és használjon egyoszlopos függvényeket( például Alsó vagy Sqrt).
- Adjon hozzá számított oszlopot egy táblához vagy rekordhoz (például egy Total Price oszlopot, amely a Mennyiség és az Egységár szorzásának eredményét mutatja).
- Nevezze át az oszlopot egy könnyebben beazonosítható névre a felhasználóknak való megjelenítéshez vagy képletekben való használathoz.
A táblák éppúgy értékek a Power Apps rendszerben, mint a sztringek vagy a számok, a képletek argumentumaként egy táblát is megadhat, és a függvények táblát is visszaadhatnak eredményként.
Feljegyzés
A jelen témakörben ismertetett függvények nem módosítják az eredeti táblákat. Ehelyett argumentumként fogadhatnak egy táblát, és átalakító alkalmazásával egy új táblát adnak vissza. További információt a Táblázatok használata című témakörben talál.
Az adatforrás oszlopai nem módosíthatók ezen függvények használatával. Az adatokat a forrásban kell módosítania. A Collect függvénnyel hozzáadhat oszlopokat egy gyűjteményhez. További információ: Adatforrások használata.
Description
A AddColumns függvény egy oszlopot ad hozzá egy táblához vagy rekordhoz, és egy képlet határozza meg az oszlop értékeit. A létező oszlopok változatlanok maradnak.
A képlet kiértékelése a megadott rekordra vagy a megadott tábla minden rekordjára történik.
Az aktuálisan feldolgozás alatt álló rekordmezők elérhetők a képletben. Használja a ThisRecord operátort, vagy egyszerűen hivatkozzon név szerint a mezőkre, ahogy más értéket is hivatkozna. Az As operátor a feldolgozás alatt álló rekord elnevezésére használatos, amellyel könnyebben érthető a képlet, és hozzáférhetőbbek a beágyazott rekordok. További információkért lásd az alábbi példákat és a rekord hatókörével való munkát.
A DropColumns függvény kizárja az oszlopokat egy táblából vagy rekordból. Az összes többi oszlop változatlan marad. DropColumns kizárja az oszlopokat, és ShowColumns oszlopokat is tartalmaz.
RenameColumns A függvény használatával átnevezheti egy tábla vagy rekord egy vagy több oszlopát úgy, hogy megad legalább egy argumentumpárt, amely megadja a tábla vagy rekord által tartalmazott oszlop nevét (a lecserélni kívánt régi nevet), valamint egy olyan oszlop nevét, amelyet a tábla vagy rekord nem tartalmaz (az új név, amelyet használni szeretne). A régi névnek már léteznie kell a táblában vagy rekordban, és az új név nem létezhet. Minden oszlopnév csak egyszer jelenhet meg az argumentumlistában régi vagy új oszlopnévként. Ha egy oszlopot át szeretne nevezni egy meglévő oszlopnévre, először helyezze el a meglévő oszlopot a következővel DropColumns, vagy nevezze át a meglévő oszlopot az útból úgy, hogy az egyik RenameColumns függvényt egymásba ágyazja.
A ShowColumns függvény egy tábla vagy rekord oszlopait tartalmazza, és az összes többi oszlopot elveti. Egyoszlopos táblázatot vagy rekordot többoszlopos táblából vagy rekordból is ShowColumns létrehozhat. ShowColumns oszlopokat tartalmaz, és DropColumns kizárja az oszlopokat.
Ezen függvények esetében az eredmény egy új tábla vagy rekord az átalakítás alkalmazásával. Az eredeti tábla vagy rekord nem módosul. Képlettel nem módosítható egy meglévő tábla vagy rekord. A SharePoint, a Microsoft Dataverse, az SQL Server és más adatforrások olyan eszközöket biztosítanak a listák és táblák oszlopainak módosításához, amelyeket gyakran sémaként neveznek. A jelen témakörben szereplő függvények csak egy bemeneti táblát vagy rekordot alakítanak át az eredeti módosítás nélkül kimeneti táblává vagy rekordtá további felhasználás céljából.
A függvények argumentumai támogatják a delegálást. Egy Filter függvény például argumentumként használható a kapcsolódó bejegyzések megkereséséhez az összes listaelemen, még akkor is, ha a '[dbo]. [AllListings]' adatforrás millió sort tartalmaz:
AddColumns( RealEstateAgents,
Listings,
Filter( '[dbo].[AllListings]', ListingAgentName = AgentName )
)
Ezeknek a függvényeknek a kimenetére a nem delegált rekordkorlát is érvényes. Ebben a példában a rendszer csak 500 bejegyzést ad vissza, még akkor is, ha a RealEstateAgents adatforrás 501 vagy több bejegyzést tartalmaz.
Ha így használja AddColumns , a Szűrőnek külön hívásokat kell indítania az adatforráshoz a RealEstateAgents első rekordjaihoz, ami sok hálózati csevegést okoz. Ha [dbo](.[AllListings] elég kicsi, és nem változik gyakran. Az OnStart Collect függvényének meghívásával gyorsítótárazhatja az alkalmazás adatforrás indításakor. Másik lehetőségként átalakíthatja az alkalmazást, hogy a kapcsolódó bejegyzéseket csak akkor húzza le a rendszer, ha a felhasználó kéri azokat.
Feljegyzés
A Power Apps 3.24042 verzió előtt az oszlopneveket idézőjelbe tett szöveges karakterlánccal adták meg, és ha adatforrás kapcsolódtak, logikai neveknek is kellett lenniük. Például a "cr43e_name" logikai nevet idézőjelek nélkül használtuk a megjelenítendő név Név idézőjelek nélkül. A szóközöket tartalmazó oszlopneveket tartalmazó SharePoint- és Excel-adatforrások esetében minden szóköz a "_x0020_" szóval lett megadva, például "Oszlopnév" mint "Column_x0020_Name". Ezt a verziót követően az összes alkalmazás automatikusan frissült a cikkben ismertetett új szintaxisra.
Szintaxis
AddColumns( TableOrRecord, ColumnName1, Formula1 [, ColumnName2, Formula2, ... ] )
- TableOrRecord – Kötelező. Tábla vagy rekord, amelyen dolgozni szeretne.
- ColumnNames - Kötelező. A hozzáadni kívánt oszlopok neve.
- Képletek - Kötelező. Az egyes rekordok kiértékeléséhez szükséges képletek. Az eredmény a megfelelő új oszlop értékeként kerül hozzáadásra. A képletben hivatkozhat a táblázat vagy rekord más oszlopára.
DropColumns( TableOrRecord, ColumnName1 [, ColumnName2, ... ] )
- TableOrRecord – Kötelező. Tábla vagy rekord, amelyen dolgozni szeretne.
- ColumnNames - Kötelező. Az eldobni kívánt oszlopok neve.
RenameColumns( TableOrRecord, OldColumnName1, NewColumnName1 [, OldColumnName2, NewColumnName2, ... ] )
- TableOrRecord – Kötelező. Tábla vagy rekord, amelyen dolgozni szeretne.
- OldColumnNames - Kötelező. Az eredeti táblából vagy rekordból átnevezni kívánt oszlopok nevei. Ez az elem elsőként jelenik meg az argumentumpárban (vagy minden argumentumpárban elsőként, ha a képlet egynél több párt tartalmaz).
- NewColumnNames – Kötelező. Helyettesítő nevek. Ez az elem utolsóként jelenik meg az argumentumpárban (vagy minden argumentumpárban utolsóként, ha a képlet egynél több párt tartalmaz).
ShowColumns( TableOrRecord, ColumnName1 [, ColumnName2, ... ] )
- TableOrRecord – Kötelező. Tábla vagy rekord, amelyen dolgozni szeretne.
- ColumnNames - Kötelező. A belefoglalni kívánt oszlopok neve.
Példák
A következő példában az IceCreamSales nevű adatforrást használjuk, amely a következő táblában szerepelteti az adatokat:
Ezek a példák egyike sem módosítja az IceCreamSales adatforrást. Minden egyes függvény átalakítja az adatforrást táblaként, és ezt az értéket adja vissza eredményként.
| Képlet | Description | Result |
|---|---|---|
| AddColumns( IceCreamSales, Revenue, UnitPrice * QuantitySold ) | Hozzáad egy Bevétel oszlopot az eredményhez. Az egyes rekordoknál kiértékeli a UnitPrice * QuantitySold képletet, és az eredményt az új oszlopba helyezi. |
|
| DropColumns( IceCreamSales, UnitPrice ) | Kizárja a UnitPrice (Egységár) oszlopot az eredményből. Ezzel a függvénnyel kizárhatja az oszlopokat, és ShowColumns belefoglalhatja őket. |
|
| ShowColumns( IceCreamSales, Flavor ) | Csak a Flavor (Íz) oszlopot szerepelteti az eredményben. A függvény oszlopokat tartalmaz, és DropColumns kizárja őket. |
|
| RenameColumns( IceCreamSales, UnitPrice, Price) | Átnevezi a UnitPrice (Egységár) oszlopot az eredményben. |
|
| RenameColumns( IceCreamSales, UnitPrice, Price, QuantitySold, Number) | Átnevezi a UnitPrice (Egységár) és a QuantitySold (EladottMennyiség) oszlopot az eredményben. |
|
|
DropColumns( RenameColumns( AddColumns( IceCreamSales, Revenue, UnitPrice * QuantitySold ), Egységár, ár ), Mennyiség ) |
A következő táblaátalakításokat hajtja végre sorrendben, kezdve a képlet belsejétől:
|
|
Lépésről lépésre
Próbáljunk ki néhány példát a cikk korábbi részéből.
Hozzon létre gyűjteményt hozzáadva egy Gomb vezérlőelemet, és az OnSelect tulajdonság értékeként adja meg a következő képletet:
ClearCollect( IceCreamSales, Table( { Flavor: "Strawberry", UnitPrice: 1.99, QuantitySold: 20 }, { Flavor: "Chocolate", UnitPrice: 2.99, QuantitySold: 45 }, { Flavor: "Vanilla", UnitPrice: 1.50, QuantitySold: 35 } ) )Az Alt billentyűt lenyomva tartva futtassa a képletet a gomb kiválasztásával.
Adjon hozzá egy második Gomb vezérlőelemet, és az OnSelect tulajdonság értékeként adja meg a következő képletet, majd futtassa:
ClearCollect( FirstExample, AddColumns( IceCreamSales, Revenue, UnitPrice * QuantitySold ) )A Fájl menüben válassza a Gyűjtemények lehetőséget, majd válassza az IceCreamSales elemet a gyűjtemény megtekintéséhez.
Az ábrán látható módon a második képlet nem módosította ezt a gyűjteményt. A AddColumns függvény írásvédett argumentumként az IceCreamSales függvényt használta; a függvény nem módosította azt a táblát, amelyre az argumentum hivatkozik.
Válassza a FirstExample lehetőséget.
Az ábrán látható módon a második képlet a hozzáadott oszlopot tartalmazó új táblát adja vissza. A ClearCollect függvény a FirstExample gyűjteményben rögzítette az új táblát, hozzátéve valamit az eredeti táblához, ahogy a függvényen a forrás módosítása nélkül átáramlik:
Oszlopokat képez le egy összetevőben
További információ: Oszlopok leképezése.