Funksjonene Collect, Clear og ClearCollect
Oppretter og tømmer samlinger og legger til poster i valgt datakilde.
Collect
Gjelder: Lerretsapper Kort Dataverse plugin-moduler Power Platform med lav kode CLI Desktop-flyter
Collect-funksjonen legger til poster i en datakilde. Elementene som skal legges til, kan være:
- En enkeltverdi: Verdien legges inn i Value-feltet i en ny post. Alle de andre egenskapene forblir blank.
- En post: Hver navngitt egenskap legges inn i den tilsvarende egenskapen til en ny post. Alle de andre egenskapene forblir tomme.
- En tabell: Hver post i tabellen legges til som en separat post i datakilden som beskrevet ovenfor. Tabellen legges ikke inn som en nestet tabell i en post. Hvis du vil gjøre dette, må du sette inn tabellen i en post først.
Når funksjonen brukes med en samling, legges ekstra kolonner til etter behov. Kolonnene for andre datakilder er fast for datakilden, og nye kolonner kan ikke legges til.
Hvis datakilden ikke allerede finnes, oppretter funksjonen en samling.
Samlinger brukes noen ganger til å holde globale variabler eller til å lage en midlertidig kopi av en datakilde. Lerretsapper er basert på formler som automatisk beregnes på nytt når brukeren samhandler med en app. Samlinger har ikke denne fordelen, og hvis du bruker samlinger, kan det gjøre appen vanskeligere å opprette og forstå. Les om å jobbe med variabler før du bruker samlinger på denne måten.
Du kan også bruke Patch-funksjonen til å opprette poster i en datakilde.
Collect returnerer den endrede datakilden som en tabell. Collect kan bare brukes i en virkemåteformel.
Clear
Gjelder for: Lerretsapper
Clear-funksjonen sletter alle postene i en samling. Kolonnene i samlingen blir værende.
Legg merke til at Clear bare fungerer på samlinger og ikke på andre datakilder. Du kan bruke RemoveIf( DataSource, true) til dette. Vær forsiktig, ettersom dette vil fjerne alle postene som er lagret for datakilden, og kan påvirke andre brukere.
Du kan bruke Remove-funksjonen til å fjerne poster selektivt.
Clear har ingen returverdi. Funksjonen kan bare brukes i en formel for virkemåte.
ClearCollect
Gjelder for: Lerretsapper Modelldrevne apper
ClearCollect-funksjonen sletter alle postene fra en samling. Deretter legges det til et annet sett med oppføringer i den samme samlingen. ClearCollect fungerer som en kombinasjon av Clear og deretter Collect i én enkelt funksjon.
ClearCollect returnerer den endrede samlingen som en tabell. ClearCollect kan bare brukes i en formel for virkemåte.
Delegering
Disse funksjonene kan ikke delegeres når de brukes med en datakilde. Bare den første delen av datakilden hentes, og deretter brukes funksjonen. Resultatet representerer kanskje ikke den fullstendig historikken. Det vises kanskje en advarsel i redigeringsmodus for å minne deg på denne begrensningen, og for å foreslå at du bytter til alternativer som kan delegeres, der det er mulig. Hvis du vil ha mer informasjon, kan du se delegeringsoversikten.
Syntaks
Collect( DataSource,Element ;...)
- DataSource – Obligatorisk. Datakilden som du vil legge til data i. Hvis den ikke allerede finnes, opprettes en ny samling.
- Elementer - Obligatorisk. Én eller flere poster eller tabeller som skal legges til i datakilden.
Klar( Samling )
- Samling – Obligatorisk. Samlingen som du vil tømme.
ClearCollect( Samling,Gjenstand , ...)
- Samling – Obligatorisk. Samlingen som du vil tømme og legge til data i.
- Elementer - Obligatorisk. Én eller flere poster eller tabeller som skal legges til i datakilden.
Eksempler
Fjerne og legge til poster i en datakilde
I disse eksemplene tømmer du en samling som heter IceCream, og legger til data. Datakilden begynner med dette innholdet:
Formel | Beskrivelse | Resultat |
---|---|---|
ClearCollect( Iskrem, { Smak: "Jordbær", Antall: 300 } ) | Fjerner alle dataene fra samlingen IceCream og legger til en post som inneholder et antall jordbæris. | Samlingen IceCream har også blitt endret. |
Samle (iskrem, { smak: "pistasj", mengde: 40 }, { smak: "appelsin", antall: 200 } ) | Legger til to poster i IceCream-samlingen med et antall iskrem med pistasj- og appelsinsmak. | Samlingen IceCream har også blitt endret. |
Klar ( Iskrem ) | Fjerner alle postene fra IceCream-samlingen. | Samlingen IceCream har også blitt endret. |
Hvis du vil ha trinnvise eksempler på hvordan du oppretter en samling, kan du se Opprette og oppdatere en samling.
Poster og tabeller
Disse eksemplene undersøker hvordan oppførings- og tabellargumenter for Collect og ClearCollect håndteres.
Formel | Beskrivelse | Resultat |
---|---|---|
ClearCollect (Iskrem, { Smak: "Sjokolade", Antall: 100 }, { Smak: "Vanilje", Antall: 200 } ) | Fjerner alle data og legger til to poster i IceCream-samlingen som inneholder et antall sjokalade- og vaniljeis. Oppføringene som skal legges til, leveres som enkeltargumenter i funksjonen. | Samlingen IceCream har også blitt endret. |
ClearCollect (iskrem, bord ( { smak: "sjokolade", mengde: 100 }, { smak: "vanilje", mengde: 200 } ) ) | Samme som forrige eksempel bortsett fra at oppføringene kombineres i en tabell og sendes via et enkelt argument. Innholdet i tabellen blir pakket ut oppføring etter oppføring før det blir lagt til i IceCream-samlingen. | Samlingen IceCream har også blitt endret. |
ClearCollect( Iskrem, { MyFavorites: Table( { Flavor: "Chocolate", Quantity: 100 }, { Flavor: "Vanilla", Quantity: 200 } ) } ) |
Samme som forrige eksempel bortsett fra at tabellen pakkes inn i en oppføring. Oppføringene i tabellen trekkes ikke ut, og i stedet blir hele tabellen lagt til som en celle i oppføringen. | Samlingen IceCream har også blitt endret. |