AddColumns-, DropColumns-, RenameColumns- ja ShowColumns-funktio

Koskee seuraavia: Pohjaan perustuvat sovellukset Työpöytätyönkulut Mallipohjaiset sovellukset Power Platform CLI

Muokkaa taulukkoa lisäämällä, poistamalla, nimeämällä uudelleen ja valitsemalla sen sarakkeita.

**ForAll-funktiota voidaan käyttää myös taulukon muotoilemiseen palauttamalla aiemmin luoduista sarakkeista luoduista uusista tietueista koostuva taulukko.

Yleiskuvaus

Nämä funktiot muokkaavat taulukkoa säätämällä sen sarakkeita:

  • Pienennä useita sarakkeita sisältävä taulukko yhteen sarakkeeseen käytettäväksi yksisarakkeisten funktioiden kanssa, kuten Lower ja Sqrt.
  • Lisää taulukkoon laskettu sarake (esimerkiksi Kokonaishinta-sarake, joka näyttää tulokset kertomalla määränyksikköhinnalla).
  • Nimeä sarake uudelleen, jotta sen nimi sopii paremmin näytettäväksi käyttäjille ja käytettäväksi kaavoissa.

Power Appsissa taulukko on arvo, samaan tapaan kuin merkkijono tai luku. Voit määrittää taulukon kaavan argumenttina, ja funktio voi palauttaa tuloksena taulukon.

Muistiinpano

Tässä aiheessa kuvatut funktiot eivät muokkaa alkuperäistä taulukkoa. Sen sijaan ne ottavat kyseisen taulukon argumenttina ja palauttavat uuden taulukon, jota on muunnettu. Lisätietoja: Taulukoiden käyttäminen.

Et voi muokata tietolähteen sarakkeita käyttämällä näitä funktioita. Sinun on muokattava tietoa sen lähteessä. Voit lisätä sarakkeita kokoelmaan käyttämällä Collect-funktiota. Lisätietoja: tietolähteiden käsitteleminen.

Description

AddColumns-funktio lisää sarakkeen taulukkoon. Kaava määrittää kyseisen sarakkeen arvot. Olemassa olevia sarakkeita ei muokata.

Kaava lasketaan taulukon jokaiselle tietueelle.

Parhaillaan käsiteltävän tietueen kentät ovat kaavan käytettävissä. Käytä ThisRecord-operaattoria tai viittaa kenttiin nimellä muiden arvojen tapaan. As-operaattoria voidaan käyttää myös käsiteltävän tietueen nimeämiseen, mikä voi auttaa tekemään kaavasta helpommin ymmärrettävän ja mahdollistaa sisäkkäisten tietueiden käytön. Lisätietoja on seuraavissa esimerkeissä ja tietueen vaikutusalueen käsittelyn ohjeessa.

DropColumns-funktio jättää sarakkeita pois taulukosta. Mitään muita sarakkeita ei muokata. DropColumns jättää pois sarakkeet, ShowColumns sisällyttää sarakkeet.

RenameColumns-funktiolla voit nimetä vähintään yhden taulukon sarakkeet uudelleen antamalla vähintään yhden argumenttiparin, joka määrittää sarakkeen nimen, jonka taulukko sisältää (vanha nimi, jonka haluat korvata), sekä sarakkeen nimen, jota taulukko ei sisällä (uusi nimi, jota haluat käyttää). Vanhan nimen on jo oltava olemassa taulukossa ja uutta nimeä ei saa olla olemassa. Jokainen sarakkeen nimi voi olla vain kerran argumenttiluettelossa joko vanhana sarakkeen nimenä tai uutena sarakkeen nimenä. Jos haluat antaa sarakkeelle jo olemassa olevan nimen, jätä ensin olemassa oleva sarake pois DropColumns-funktiolla tai nimeä se uudelleen laittamalla yksi RenameColumns-funktio sisäkkäin toisen kanssa.

ShowColumns-funktio sisällyttää taulukon sarakkeet ja jättää pois kaikki muut sarakkeet. Voit käyttää ShowColumns-funktiota yksisarakkeisen taulukon luomiseen usean sarakkeen taulukosta. DropColumns jättää pois sarakkeet, ShowColumns sisällyttää sarakkeet.

Kaikkien näiden funktioiden tuloksena on uusi taulukko, johon on tehty muunnos. Alkuperäistä taulukkoa ei muokata. Aiemmin luotua taulukkoa ei voi muokata kaavan avulla. SharePoint, Microsoft Dataverse, SQL Server ja muut tietolähteet ovat työkaluja, joilla muokataan luetteloiden, taulukoiden ja taulukoiden sarakkeita, joihin kutsutaan usein rakennetta. Tämän artikkelin toiminnot muuttavat vain syötetaulukon tulostaulukoksi myöhäisempää käyttöä varten muuttamatta alkuperäistä taulukkoa.

Näiden funktioiden argumentit tukevat delegointia. Esimerkiksi liittyvien tietueiden hakemisessa argumenttina käytetty Filter-funktio käy läpi kaikki luettelot, vaikka '[dbo].[AllListings]'-tietolähde sisältäisi miljoona riviä:

AddColumns( RealEstateAgents,
   Listings,
   Filter(  '[dbo].[AllListings]', ListingAgentName = AgentName )
)

Näiden toimintojen tulosta koskevat kuitenkin muun kuin delegointitietueen raja. Tässä esimerkissä palautetaan vain 500 tietuetta, vaikka RealEstateAgents-tietolähteessä on vähintään 501 tietuetta.

Jos käytät AddColumns-toimintoa tällä tavalla, Filter-funktion täytyy tehdä erilliset kutsut tietolähteeseen kullekin näistä ensimmäisistä RealEstateAgents-tietueista, mikä aiheuttaa paljon verkkoliikennettä. Jos [dbo](.[AllListings] on riittävän pieni eikä muutu usein. Voit kutsua Collect-funktiota kohteessa OnStart tallentaaksesi tietolähteen sovelluksesi välimuistiin, kun se käynnistyy. Vaihtoehtoisesti voit jäsentää sovelluksesi uudelleen niin, että vedät liittyvät tietueet vain silloin, kun käyttäjä pyytää niitä.

Muistiinpano

Ennen Power Appsin versiota 3.24042 sarakenimet määritettiin tekstimerkkijonolla käyttäen lainausmerkkejä, ja jos ne oli yhdistetty tietolähteeseen, niiden oli oltava myös loogisia nimiä. Esimerkiksi looginen nimeä "cr43e_name" lainausmerkissä käytettiin näyttönimen lainausmerkittömän näyttönimen Nimi sijaan. SharePoint- ja Excel-tietolähetissä, jotka sisältävät välimerkillisiä sarakenimiä, jokaista välimerkkiä merkitsi "_x0020_". Tällöin esimerkiksi "Sarakkeen nimi" oli "Sarakkeen_x0020_nimi". Kyseisen version jälkeen kaikki sovellukset päivitettiin automaattisesti käyttämään tässä artikkelissa kuvattua uutta syntaksia.

Syntaksi

AddColumns( Table, ColumnName1, Formula1 [, ColumnName2, Formula2, ... ] )

  • Table – Pakollinen. Käsiteltävä taulukko.
  • ColumnName(s) – Pakollinen. Lisättävien sarakkeiden nimet.
  • Formula(s) – Pakollinen. Kullekin tietueelle laskettavat kaavat. Tulos lisätään vastaavan uuden sarakkeen arvona. Voit viitata taulukon muihin sarakkeisiin tässä kaavassa.

DropColumns( Table, ColumnName1 [, ColumnName2, ... ] )

  • Table – Pakollinen. Käsiteltävä taulukko.
  • ColumnName(s) – Pakollinen. Pois jätettävien sarakkeiden nimet.

RenameColumns( Table, OldColumnName1, NewColumnName1 [, OldColumnName2, NewColumnName2, ... ] )

  • Table – Pakollinen. Käsiteltävä taulukko.
  • OldColumnName(s) – Pakollinen. Alkuperäisen taulukon uudelleennimettävien sarakkeiden nimet. Tämä elementti näkyy ensimmäisenä argumenttiparissa (tai ensimmäisenä kussakin argumenttiparissa, jos kaava sisältää useamman kuin yhden parin).
  • NewColumnName(s) – Pakollinen. Korvaavat nimet. Tämä elementti näkyy viimeisenä argumenttiparissa (tai viimeisenä kussakin argumenttiparissa, jos kaava sisältää useamman kuin yhden parin).

ShowColumns( Table, ColumnName1 [, ColumnName2, ... ] )

  • Table – Pakollinen. Käsiteltävä taulukko.
  • ColumnName(s) – Pakollinen. Sisällytettävien sarakkeiden nimet.

Esimerkkejä

Tämän osion esimerkeissä käytämme IceCreamSales-tietolähdettä, joka sisältää tämän taulukon tiedot:

IceCream-esimerkki.

Mikään näistä esimerkeistä ei muokkaa IceCreamSales-tietolähdettä. Jokainen funktio muuntaa tietolähteen arvon taulukkomuodossa ja palauttaa tuloksena tämän arvon.

Kaava Description Result
AddColumns( IceCreamSales, Revenue, UnitPrice * QuantitySold ) Lisää Revenue-sarakkeen tulokseen. UnitPrice * QuantitySold arvioidaan jokaiselle tietueelle, ja tulos sijoitetaan uuteen sarakkeeseen. Tulos Srawberryllä, Chocolatella ja Vanillalla.
DropColumns( IceCreamSales, UnitPrice ) Sulkee pois UnitPrice-sarakkeen tuloksesta. Tällä funktiolla voit sulkea pois sarakkeita, ja ShowColumns-funktiolla voit sisällyttää niitä. Tulos Strawberryllä, Chocolatella, Vanillalla, joilla on vain QuantitySold-sarake.
ShowColumns( IceCreamSales, Flavor ) Sisältää vain tuloksen Flavor-sarakkeen. Tällä funktiolla voit sisällyttää sarakkeita, ja DropColumns-funktiolla voit sulkea niitä pois. Vain Flavor-sarake.
RenameColumns( IceCreamSales, UnitPrice, Price) Nimeää uudelleen UnitPrice-sarakkeen tuloksessa. Tulos Flavorilla, Pricella ja Revenuella.
RenameColumns( IceCreamSales, UnitPrice, Price, QuantitySold, Number) Nimeää uudelleen UnitPrice- ja QuantitySold-sarakkeet tuloksessa. Tulos, jossa on 3 IceCreamsia ja sarakkeina Flavor, Price, Revenue.
DropColumns(
RenameColumns(
AddColumns( IceCreamSales, Revenue,
UnitPrice * QuantitySold ),
UnitPrice, Price ),
Quantity )
Suorittaa seuraavan taulukkomuunnoksen järjestyksessä alkaen kaavan sisältä:
  1. Lisää Revenue-sarakkeen tietuekohtaisen UnitPrice * Quantity -laskutoimituksen perusteella.
  2. Muuttaa UnitPrice-sarakkeen nimeksi Price.
  3. Jättää pois Quantity-sarakkeen.
Järjestys on tärkeä, emme esimerkiksi voi laskea sarakkeella UnitPrice, kun sen nimi on muutettu.
IceCream-esimerkki yksikköhintaa varten.

Vaihe vaiheelta

Kokeilkaamme joitakin aiemmin tässä artikkelissa esitettyjä esimerkkejä.

  1. Luo kokoelma lisäämällä Button-ohjausobjekti ja määrittämällä sen OnSelect-ominaisuudeksi tämä kaava:

    ClearCollect( IceCreamSales,
       Table(
           { Flavor: "Strawberry", UnitPrice: 1.99, QuantitySold: 20 },
           { Flavor: "Chocolate", UnitPrice: 2.99, QuantitySold: 45 },
           { Flavor: "Vanilla", UnitPrice: 1.50, QuantitySold: 35 }
       )
    )
    
  2. Suorita kaava valitsemalla painike, kun pidät Alt-näppäintä pohjassa.

  3. Lisää toinen Button-ohjausobjekti, määritä sen OnSelect-ominaisuudeksi seuraava kaava ja suorita se:

    ClearCollect( FirstExample,
       AddColumns( IceCreamSales, Revenue, UnitPrice * QuantitySold )
    )
    
  4. Jos haluat esikatsella luomaasi kokoelmaa, valitse Tiedosto-valikosta Kokoelmat ja avaa IceCreamSales-kokoelma valitsemalla se.

    Kuten tästä kuvasta näkyy, toinen kaava ei muuttanut tätä kokoelmaa. AddColumns-funktio käytti IceCreamSales-kokoelmaa vain luku -argumenttina: funktio ei muuttanut taulukkoa, johon kyseinen argumentti viittaa.

    Kokoelman katseluohjelma, jossa näkyy kolme tietuetta jäätelömyyntikokoelmasta, jossa ei ole tuottosaraketta.

  5. Valitse FirstExample.

    Kuten tämä kuva osoittaa, toinen kaava palautti uuden taulukon, jossa on lisätty sarake. ClearCollect-funktio sieppasi uuden taulukon FirstExample-kokoelma lisäten jotakin alkuperäiseen taulukkoon, kun se kävi funktion läpi muuttamatta lähdettä:

    Kokoelman katseluohjelma, jossa näkyy kolme tietuetta ensimmäisestä esimerkkikokoelmasta, joka sisältää uuden tuottosarakkeen.

Osan sarakkeiden yhdistäminen

Katso: Yhdistä sarakkeet.