Deli z drugimi prek


Funkciji GroupBy in Ungroup

Velja za: Aplikacije Canvas Aplikacije, ki temeljijo na modelu Power Pages

Združi in razdruži zapise tabele.

Description

Funkcija GroupBy vrne tabelo z zapisi, združenimi v skupino na podlagi vrednosti v enem ali več stolpcih. Zapisi v isti skupini so umeščeni v en zapis, z dodanim stolpcem, ki drži ugnezdeno tabelo preostalih stolpcev.

Funkcija Ungroup razveljavi proces GroupBy. Ta funkcija vrne tabelo, pri čemer na ločene zapise loči vse zapise, ki so bili združeni v skupino.

Zapise lahko združite s funkcijo GroupBy, spremenite tabelo, ki jo vrne, nato pa razdružite zapise v spremenjeni tabeli s funkcijo Ungroup. Skupino zapisov lahko na primer odstranite po tem pristopu:

  • Uporabite funkcijo GroupBy.
  • Uporabite funkcijo Filter, da odstranite celotno skupino zapisov.
  • Uporabite funkcijo Ungroup.

Lahko tudi združite rezultate na podlagi skupine:

  • Uporabite funkcijo GroupBy.
  • Uporabite funkcijo AddColumns z Sum, Average in druge združevalne funkcije za dodajanje novega stolpca, ki je agregat skupinskih tabel.
  • Uporabite funkcijo DropColumns, da spustite tabelo skupine.

Ungroup poskuša ohraniti prvotni vrstni red zapisov, ki so bili posredovani GroupBy. To ni vedno mogoče (na primer, če prvotna tabela vsebuje zapise prazno).

Tabela je vrednost v rešitvi Power Apps, tako kot niz ali številka. Določite lahko tabelo kot argument za funkcijo in funkcija lahko vrne tabelo. GroupBy in Ungroup ne spreminjata tabele; namesto tega vzamejo tabelo kot argument in vrnejo drugo tabelo. Za več informacij glejte delo s tabelami.

opomba,

V Power Apps pred različico 3.24042 so bila imena stolpcev podana z besedilnim nizom z dvojnimi narekovaji, in če so bili povezani z vir podatkov, so morala biti tudi logična imena. Na primer, logično ime "cr43e_name" z dvojnimi narekovaji je bilo uporabljeno namesto prikazno ime Ime brez narekovajev. Za SharePoint in izvore podatkov Excel, ki vsebujejo imena stolpcev s presledki, je bil vsak presledek določen z "_x0020_", na primer "Ime stolpca" kot "Ime_stolpca_x0020". Po tej različici so bile vse aplikacije samodejno posodobljene na novo sintakso, opisano v tem članku.

Sintaksa

Združi po( Tabela, ImeStolpca1 [, ImeStolpca2 , ... ], GroupColumnName )

  • Tabela - obvezno. Tabela, ki jo je treba združiti.
  • Imena stolpcev - obvezno. Imena stolpcev v možnosti Table, po kateri se zapisi združijo. Ti stolpci postanejo stolpci v pridobljeni tabeli.
  • GroupColumnName - Zahtevano. Ime stolpca za shranjevanje podatkov zapisa ni v ColumnName(s).

Razdruži( Tabela, ImeStolpcaSkupine )

  • Tabela - obvezno. Tabela, ki jo je treba razdružiti.
  • GroupColumnName - Zahtevano. Stolpec, ki vsebuje nastavitev podatkov zapisa s funkcijo GroupBy.

Primeri

Ustvarjanje zbirke

  1. Dodajte gumb in nastavite lastnost Besedilo zanj, tako da gumb prikazuje Prvotno.
  2. Nastavite lastnost OnSelect gumba Prvotno na to formulo:
ClearCollect( CityPopulations,
    { City: "London",    Country: "United Kingdom", Population: 8615000},
    { City: "Berlin",    Country: "Germany",        Population: 3562000},
    { City: "Madrid",    Country: "Spain",          Population: 3165000},
    { City: "Rome",      Country: "Italy",          Population: 2874000},
    { City: "Paris",     Country: "France",         Population: 2273000},
    { City: "Hamburg",   Country: "Germany",        Population: 1760000},
    { City: "Barcelona", Country: "Spain",          Population: 1602000},
    { City: "Munich",    Country: "Germany",        Population: 1494000},
    { City: "Milan",     Country: "Italy",          Population: 1344000}
)
  1. Medtem ko držite tipko Alt, izberite gumb Prvotno.

    Pravkar ste ustvarili zbirko, imenovano CityPopulations, ki vsebuje te podatke:

    Primer CityPopulations.

  2. Če želite prikazati to zbirko, izberite Zbirke v meniju Datoteka in nato izberite zbirko CityPopulations. Prikaže se prvih pet zapisov v zbirki:

    Zbirka CityPopulations.

Združevanje zapisov

  1. Dodajte še en gumb in nastavite njegovo lastnost Besedilo na "Group".

  2. Nastavite lastnost OnSelect tega gumba na to formulo:

    ClearCollect(CitiesByCountry, GroupBy(CityPopulations, Country, Cities) )

  3. Medtem ko držite tipko Alt, izberite gumb Združi.

    Pravkar ste ustvarili zbirko, imenovano CitiesByCountry, v kateri so zapisi prejšnje zbirke združeni po stolpcu Country.

    Združena mesta.

  4. Če želite prikazati prvih pet zapisov v tej zbirki, izberite Zbirke v meniju Datoteka.

    Mesta po državi/regiji.

  5. Če želite prikazati prebivalstvo mest v državi/regiji, izberite ikono tabele v stolpcu Mesta za to državo/regijo (na primer Nemčija):

    Prebivalstvo – Nemčija.

Filtriranje in razdruževanje zapisov

  1. Dodajte še en gumb in nastavite lastnost Besedilo zanj, tako da gumb prikazuje "Filter".

  2. Nastavite lastnost OnSelect tega gumba na to formulo:

    ClearCollect( CitiesByCountryFiltered, Filter( CitiesByCountry, "e" v državi) )

  3. Medtem ko držite tipko Alt, izberite gumb, ki ste ga dodali.

    Pravkar ste ustvarili tretjo zbirko, imenovano CitiesByCountryFiltered, ki vključuje samo tiste države/regije, ki imajo v imenu »e« (torej ne Španija in Italija).

    CitiesByCountryFiltered.

  4. Dodajte še en gumb in nastavite lastnost Besedilo zanj, tako da gumb prikazuje "Ungroup".

  5. Nastavite lastnost OnSelect tega gumba na to formulo:

    ClearCollect(CityPopulationsUngrouped, Ungroup(CitiesByCountryFiltered, Cities))

    Rezultat je:

    Mesta po državi/regiji po razdružitvi.

Združeni rezultati

Druga operacija, ki jo lahko izvedemo na združeni tabeli, je sestavljanje rezultatov. V tem primeru bomo sešteli prebivalstvo večjih mest v vsaki državi/regiji.

  1. Dodajte še en gumb in nastavite lastnost Besedilo zanj, tako da gumb prikazuje "Sum".

  2. Nastavite lastnost OnSelect gumba "Sum" na to formulo:

    ClearCollect( CityPopulationsSum, AddColumns( CitiesByCountry, 'Vsota mestnih prebivalcev', Sum( mesta, prebivalstvo) ) )

    Rezultat je:

    Vsota mest.

    AddColumns se začne z osnovno zbirko CitiesByCountry in doda nov stolpec Sum of City Populations. Vrednosti tega stolpca so izračunane vrstica za vrstico na podlagi formule Sum( Cities, Population ). AddColumns zagotavlja vrednost Cities stolpca (tabela) za vsako vrstico in Sum sešteje populacijo za vsako vrstico te podtabele.

    Zdaj, ko imamo želeno vsoto, lahko uporabimo DropColumns za odstranjevanje podtabel.

  3. Dodajte še en gumb in nastavite lastnost Besedilo zanj, tako da gumb prikazuje "SumOnly".

  4. Nastavite lastnost OnSelect gumba "SumOnly" na to formulo:

    ClearCollect( CityPopulationsSumOnly, DropColumns( CityPopulationsSum, Cities) )

    Rezultat je:

    Vsota držav.

    Upoštevajte, da ni bilo treba razdružiti te tabele.