Collect, Clear és ClearCollect függvények
Használatukkal gyűjtemények hozhatók létre, gyűjtemények tartalma törölhető, és rekordok vehetők fel bármilyen adatforrásba.
Collect
A következőkre vonatkozik: Vászonalapú alkalmazások Kártyák Dataverse kevés kódolást igénylő beépülő modulok Power Platform CLI asztali folyamatok
A Collect függvénnyel rekordok vehetők fel egy adatforrásba. A hozzáadni kívánt elemek a következők lehetnek:
- Egyetlen érték: A rendszer egy új rekord Value (Érték) mezőjében helyezi el az értéket. Az összes többi tulajdonság blank marad.
- Egy rekord: A rendszer minden elnevezett tulajdonságot egy új rekord megfelelő tulajdonságában helyez el. Az összes többi tulajdonság üres marad.
- Egy tábla: A rendszer a tábla minden rekordját különálló rekordként felveszi az adatforrásba, a fentebb leírtaknak megfelelően. A táblát nem beágyazott táblaként adja hozzá a rendszer egy rekordhoz. Ha ezt szeretné tenni, először burkolja be a táblát egy rekordba.
Ha a függvényt gyűjteménnyel használja, a rendszer szükség esetén újabb oszlopokat hoz létre. Az egyéb adatforrásokhoz tartozó oszlopokat az adatforrás rögzíti, és új oszlopok nem adhatók hozzá.
Ha az adatforrás még nem létezik, a rendszer létrehoz egy gyűjteményt.
A gyűjtemények néha globális változók tárolására vagy az adatforrások ideiglenes másolataként szolgálnak. A vászonalapú alkalmazások olyan képleteken alapulnak, amelyek automatikusan újból elvégzik a számításokat, amikor a felhasználó használja az alkalmazást. A gyűjtemények esetében ez az előny nem érvényesül, ezért használatuk megnehezítheti az alkalmazás létrehozását és működésének megértését. Mielőtt ilyen módon használna egy gyűjteményt, tekintse át a változók használatát bemutató témakört.
Az adatforrásokban a Patch függvénnyel is hozhatók létre rekordok.
A Collect függvény a módosított adatforrás táblaként adja vissza. A Collect csak viselkedési képletben használható.
Clear
A következőkre vonatkozik: Vászonalapú alkalmazások
A Clear függvény egy gyűjtemény összes rekordját törli. A gyűjtemény oszlopai megmaradnak.
Vegye figyelembe, hogy a Clear csak gyűjteményeken használható, más típusú adatforrásokon nem. Más típusú adatforrásokon a RemoveIf( Adatforrás, true) függvényt használhatja erre a célra. Legyen körültekintő, mivel a függvény az összes rekordot eltávolítja az adatforrás tárjából, és más felhasználókra is hatással lehet.
Ha csak bizonyos rekordokat szeretne eltávolítani, a Remove függvényt használhatja.
A törlésnek nincs visszatérési értéke. A függvény csak műveleti képletekben használható.
ClearCollect
A következőkre vonatkozik: Vászonalapú alkalmazások Modellvezérelt alkalmazások
A ClearCollect függvény egy gyűjtemény összes rekordját törli. A törlés után ugyanabba a gyűjteménybe különböző rekordkészleteket vesz fel. A ClearCollect a Clear és a Collect függvény kombinációja egyetlen függvényben.
A ClearCollect a módosított gyűjteményt táblaként adja vissza. A ClearCollect csak viselkedési képletekben használható.
Meghatalmazás
Adatforrással való használat esetén ezek a funkciók nem delegálhatók. Csak az adatforrás első részét kéri le, és utána alkalmazza a funkciót. Előfordulhat, hogy az eredmény nem tükrözi a teljes képet. A szerkesztés során megjelenhet egy figyelmeztetés, amely emlékezteti erre a korlátozásra, és javasolja, hogy lehetőség szerint váltson delegálható alternatívára. További információkért lásd: a delegálás áttekintése.
Szintaxis
Collect( DataSource,Item , ...)
- DataSource – Kötelező. Az adatforrás, amelyhez adatokat szeretne hozzáadni. Ha még nem létezik, a rendszer létrehoz egy új gyűjteményt.
- Elemek - Kötelező. Az adatforráshoz hozzáadandó egy vagy több rekord vagy tábla.
Törlés ( gyűjtemény )
- Gyűjtemény – Kötelező. Az a gyűjtemény, amelynek törölni szeretné a rekordjait.
ClearCollect( Gyűjtemény; Elem; ... )
- Gyűjtemény – Kötelező. Az a gyűjtemény, amelynek törölni szeretné a rekordjait és amelyhez adatokat szeretne hozzáadni.
- Elemek - Kötelező. Az adatforráshoz hozzáadandó egy vagy több rekord vagy tábla.
Példák
Adatforrás rekordjainak törlése és rekordok felvétele az adatforrásba
Az alábbi példákban szereplő függvényekkel a Jégkrém nevű gyűjteményből törölhetők és ebbe vehetők fel adatok. Az adatforrás tartalma kezdetben a következő:
Képlet | Ismertetés | Eredmény |
---|---|---|
ClearCollect( Fagylalt,Íz { : "Eper", Mennyiség: 300 } ) | Az összes adat törlése a Jégkrém gyűjteményből, majd egy adott mennyiségű epres jégkrémet tartalmazó rekord felvétele. | A Jégkrém gyűjtemény is módosult. |
Collect( Fagylalt,Íz { : "Pistachio", Mennyiség: 40,Íz } { : "Orange", Mennyiség: 200 } ) | Két rekord felvétele a Jégkrém gyűjteménybe, amelyek adott mennyiségű pisztáciás és narancsos jégkrémet tartalmaznak. | A Jégkrém gyűjtemény is módosult. |
Clear( Fagylalt ) | A Jégkrém gyűjtemény összes rekordjának eltávolítása. | A Jégkrém gyűjtemény is módosult. |
A gyűjtemény létrehozásával kapcsolatos, lépésekre bontott példák a Gyűjtemény létrehozása és frissítése című cikkben találhatók.
Rekordok és táblák
A következő példák áttekintik a Collect és a ClearCollect rekordjaihoz és tábláihoz tartozó argumentumok kezelését.
Képlet | Ismertetés | Eredmény |
---|---|---|
ClearCollect( Fagylalt,Íz { : "Csokoládé", Mennyiség: 100,Íz } { : "Vanília", Mennyiség: 200 } ) | Az összes adat törlése a Jégkrém gyűjteményből, majd két rekord felvétele, amelyek adott mennyiségű csokoládés és vanília ízű jégkrémet tartalmaznak. A hozzáadandó rekordok a függvény egyedi argumentumaként állnak rendelkezésre. | A Jégkrém gyűjtemény is módosult. |
ClearCollect( IceCream, Table( { Íz: "Csokoládé", Mennyiség: 100,Íz } { : "Vanília", Mennyiség: 200 } ) ) | Ugyanaz, mint az előző példa, azzal a kivétellel, hogy a rekordok egy táblába lettek összesítve, és egyetlen argumentumban kerülnek átadásra. A tábla tartalmát a rendszer a Jégkrém gyűjteménybe való felvételt megelőzően rekordonként nyeri ki. | A Jégkrém gyűjtemény is módosult. |
ClearCollect( fagylalt, { Kedvencek: Tábla( { Íz: "Csokoládé", Mennyiség: 100 }, { Íz: "Vanília", Mennyiség: 200 } ) } ) |
Ugyanaz, mint az előző példa, azzal a kivétellel, hogy a tábla rekordba lett helyezve. A tábla rekordjait nem nyerjük ki; ehelyett a teljes táblát hozzáadjuk a rekord cellájaként. | A Jégkrém gyűjtemény is módosult. |