Funktionerne Collect, Clear og ClearCollect

Opretter og rydder samlinger og føjer poster til alle datakilder.

Collect

Gælder for: lærredapps kort Dataverse-low-code-plug-ins Power Platform-CLI skrivebordsflow

Funktionen Collect føjer poster til en datakilde. Der kan tilføjes følgende typer elementer:

  • En enkelt værdi: Værdien placeres i feltet Value for en ny post. Alle andre egenskaber er blank.
  • En post: Hver navngivet egenskab placeres i den tilsvarende egenskab for en ny post. Alle andre egenskaber er tomme.
  • En tabel: Hver post i tabellen tilføjes som en separat post i datakilden som beskrevet ovenfor. Tabellen tilføjes ikke som en indlejret tabel til en post. Det gøres ved først at placere tabellen i en post.

Når den bruges med en samling, kan der oprettes yderligere kolonner efter behov. Kolonnerne for andre datakilder er faste for datakilden, og der kan ikke tilføjes nye kolonner.

Hvis datakilden ikke allerede findes, oprettes der en samling.

Samlinger bruges nogle gange til globale variabler eller til at oprette en midlertidig kopi af en datakilde. Læderapps er baseret på formler, der automatisk genberegnes, når brugeren interagerer med en app. Samlinger har ikke disse fordele, og hvis du bruger samlinger, kan det gøre det sværere at oprette og forstå din app. Inden du bruger en samling på denne måde, skal du se arbejde med variabler.

Du kan også bruge funktionen Patch til at oprette poster i en datakilde.

Collect returnerer den ændrede datakilde som en tabel. Collect kan kun bruges i en funktionsformel.

Clear

Gælder for: Lærredapps

Funktionen Clear sletter alle posterne i en samling. Kolonnen i samlingen bevares.

Vær opmærksom på, at Clear kun kan bruges på samlinger og ikke på datakilder. Du kan bruge RemoveIf( DataSource, true ) til det formål. Vær forsigtig, da dette vil fjerne alle poster fra datakilden, og det kan påvirke andre brugere.

Du kan bruge funktionen Remove, hvis du vil fjerne bestemte poster.

Clear har ikke nogen returværdi. Den kan kun bruges i en funktionsformel.

ClearCollect

Gælder for: Lærredapps Modelbaserede apps

Funktionen ClearCollect sletter alle posterne fra en samling. Og føjer derefter et andet sæt poster til den samme samling. Funktionen ClearCollect er en kombination af Clear efterfulgt af Collect.

ClearCollect returnerer den ændrede samling som en tabel. ClearCollect kan kun bruges i en funktionsformel.

Delegering

Disse funktioner kan ikke uddelegeres, når de bruges med en datakilde. Kun den første del af datakilden hentes, og derefter vil funktionen blive anvendt. Resultatet repræsenterer muligvis ikke hele historien. Der vises muligvis en advarsel på oprettelsestidspunktet for at minde dig om denne begrænsning og foreslå skift til alternativer, der kan uddelegeres, hvis det er muligt. Du kan finde flere oplysninger i uddelegeringsoversigten.

Syntaks

Collect( DataSource, Item, ... )

  • DataSource – påkrævet. Den datakilde, du vil tilføje data i. Hvis den ikke allerede findes, oprettes der en ny.
  • Item(s) - påkrævet. En eller flere poster eller tabeller, du føjer til datakilden.

Clear( Collection )

  • Collection – påkrævet. Den samling, du vil rydde.

ClearCollect( Collection, Item, ... )

  • Collection – påkrævet. Den samling, du vil rydde og derefter føje data til.
  • Item(s) - påkrævet. En eller flere poster eller tabeller, du føjer til datakilden.

Eksempler

Sådan rydder du poster fra og føjer poster til en datakilde

I disse eksempler skal du rydde poster fra og føje poster til en samling med navnet IceCream. Datakilden har følgende indhold til at starte med:

Eksempel på datakilde.

Formel Beskrivelse Resultat
ClearCollect( IceCream, { Flavor: "Strawberry", Quantity: 300 } ) Rydder alle data fra samlingen IceCream og tilføjer derefter de poster, hvor der er angivet en mængde for jordbæris. Tabel med én post.

Samlingen IceCream er også blevet ændret.
Collect( IceCream, { Flavor: "Pistachio", Quantity: 40 }, { Flavor: "Orange", Quantity: 200 } ) Tilføjer to poster i samlingen IceCream, som omfatter mængden af is med smagen pistacie og appelsin. Tabel med to poster.

Samlingen IceCream er også blevet ændret.
Clear( IceCream ) Fjerner alle poster fra samlingen IceCream. Tom tabel.

Samlingen IceCream er også blevet ændret.

Du kan finde en trinvis vejledning i, hvordan du opretter en samling, under Oprette og opdatere en samling .

Poster og tabeller

I disse eksempler undersøges det, hvordan post- og tabelargumenter til Collect og ClearCollect håndteres.

Formel Beskrivelse Resultat
ClearCollect( IceCream, { Flavor: "Chocolate", Quantity: 100 }, { Flavor: "Vanilla", Quantity: 200 } ) Rydder alle data fra samlingen IceCream og tilføjer derefter to poster, som indeholder en mængde for vaniljeis. De poster, der skal tilføjes, angives som individuelle argumenter for funktionen. Poster for Chocolate og Vanilla er føjet til samlingen.

Samlingen IceCream er også blevet ændret.
ClearCollect( IceCream, Table( { Flavor: "Chocolate", Quantity: 100 }, { Flavor: "Vanilla", Quantity: 200 } ) ) Det samme som forrige eksempel, bortset fra at posterne kombineres i en tabel og overføres til via et enkelt argument. Indholdet i tabellen udtrækkes som en post efter post, inden den føjes til samlingen IceCream. Poster for Chocolate og Vanilla er føjet til samling og ændret.

Samlingen IceCream er også blevet ændret.
ClearCollect( IceCream,
{ MyFavorites: Table( { Flavor: "Chocolate", Quantity: 100 }, { Flavor: "Vanilla", Quantity: 200 } ) } )
Det samme som det tidligere eksempel, bortset fra, at tabellen er ombrudt i en post. Posterne i tabellen udpakkes ikke, og hele tabellen tilføjes i stedet som en celle i posten. Poster for Chocolate og Vanilla er føjet til samling og ændret med tabel samlet i en post.

Samlingen IceCream er også blevet ændret.