Funktsioonid AddColumns, DropColumns, RenameColumns ja ShowColumns
Kehtib: Lõuendirakendused Töölauavood Mudelipõhised rakendused Power Platform CLI
Kujundab tabeli, lisades, lohistades, ümbernimetades ja valides selle veerud.
Funktsiooni **ForAll saab kasutada ka tabeli kujundamiseks, tagastades olemasolevatest veergudest loodud uute kirjete tabeli.
Ülevaade
Need funktsioonid kujundavad tabeli, kohandades selle veerge.
- Vähendage mitut veergu sisaldavat tabelit ühe veeruni, et kasutada seda üheveeruliste funktsioonidega (nt Lower või Sqrt).
- Lisage tabelisse arvutatud veerg (nt veerg Total Price, mis näitab väärtuse Quantity korrutamist väärtusega Unit Price).
- Nimetage veerg ümber millekski tähendusrikkamaks, kasutajatele kuvamiseks või valemites kasutamiseks.
Tabel on väärtus Power Appsis, just nagu string või arv. Saate tabeli valemis argumendina määrata ja funktsioonid saavad tabeli tulemina tagastada.
Märkus.
Selles teemas kirjeldatud funktsioonid ei muuda algset tabelit. Selle asemel võtavad nad selle tabeli argumendina ja tagastavad uue tabeli, millel on rakendatud teisendus. Lisateavet leiate teemast Tabelitega töötamine.
Nende funktsioonidega ei saa andmeallikas veerge muuta. Peate muutma andmeid selle algses asukohas. Saate kogumisse funktsiooniga Collect veerge lisada.. Lisateavet leiate teemast Andmeallikatega töötamine.
Kirjeldus
Funktsioon AddColumns lisab tabelisse veeru ja valem määratleb selles veerus olevad väärtused. Olemasolevad veerud jäävad muutmata.
Valem hinnatakse iga tabeli kirje puhul eraldi.
Praegu töödeldavad kirje väljad on valemis saadaval. Kasutage tehtemärki ThisRecord või lihtsalt viidake väljadele nime järgi, nagu iga muu väärtuse korral. Tehtemärki As saab kasutada ka töödeldava kirje nimetamiseks, mis aitab teil valemit paremini mõista ja muuta pesastatud kirjed juurdepääsetavaks. Lisateabe saamiseks vaadake alltoodud näiteid ja jaotist kirje ulatusega töötamine.
Funktsioon DropColumns jätab veerud tabelist välja. Kõik muud veerud jäävad muutmata. DropColumns välistab veerud ja ShowColumns sisaldab veerge.
Funktsiooniga RenameColumns saate tabeli ühe või mitu veergu ümber nimetada, esitades vähemalt ühe argumentide paari, mis määrab veeru nime, mida tabel sisaldab (vana nimi, mida soovite asendada) ja veeru nime, mida tabel ei sisalda (uus nimi, mida soovite kasutada). Vana nimi peab tabelis juba olemas olema ja uus nimi ei tohi olemas olla. Iga veeru nimi võidakse argumendiloendis kuvada ainult üks kord kas vana veerunimena või uue veerunimena. Veeru ümbernimetamiseks mõneks olemasoleva veeru nimeks, lohistage esmalt olemasolevat veergu funktsiooniga DropColumns või nimetage olemasolev ümber, pesastades ühe funktsiooni RenameColumns teisega.
Funktsioon ShowColumns kaasab tabeli veerud ja lohistab kõik muud veerud ära. Funktsiooniga ShowColumns saate mitme veeruga tabelist ühe veeruga tabeli luua. ShowColumns sisaldab veerge ja DropColumns välistab veerud.
Kõigi nende funktsioonide puhul on tulemuseks uus tabel, millele on rakendatud teisendus. Algset tabelit ei muudeta. Olemasolevat tabelit ei saa valemi abil muuta. SharePoint, Microsoft Dataverse, SQL Serverist ja muudest andmeallikatest on tööriistad loendite, tabelite ja tabelite veergude muutmiseks, millele sageli viidatakse kui skeemile. Selle artikli funktsioonid teisendavad sisendtabeli ilma originaali muutmata ainult väljundtabeliks edasiseks kasutamiseks.
Nende funktsioonide argumendid toetavad delegeerimist. Näiteks funktsioon Filter, mida kasutatakse argumendina seotud kirjete otsimiseks kõigist kirjetest, isegi juhul, kui andmeallikas '[dbo].[AllListings]' sisaldab miljonit rida:
AddColumns( RealEstateAgents,
Listings,
Filter( '[dbo].[AllListings]', ListingAgentName = AgentName )
)
Nende funktsioonide väljund sõltub siiski mitte-delegatsiooni kirje limiidist. Selles näites tagastatakse ainult 500 kirjet isegi juhul, kui andmeallikas RealEstateAgents on 501 või rohkem kirjet.
Kui kasutate sel viisil AddColumnsi , peab Filter tegema eraldi kõnesid andmeallikas kõigi nende esimeste kirjete kohta RealEstateAgentsis , mis põhjustab palju võrguvestlust. Kui [dbo](.[AllListings] on piisavalt väike ja ei muutu sageli. Saate helistada OnStarti funktsioonile Kogu , et salvestada rakenduses andmeallikas selle käivitamisel vahemällu. Alternatiivina võite oma rakenduse ümber korraldada, et saaksite seostuvad kirjed kaasata ainult juhul, kui kasutaja nende kohta küsib.
Märkus.
Enne Power Apps versiooni 3.24042 määrati veergude nimed tekstistringiga topeltjutumärkide abil ja kui need olid ühendatud andmeallikas-ga, pidid need olema ka loogilised nimed. Näiteks kasutati kuvatava nime asemel loogilist nime "cr43e_name" topeltjutumärkidega Nimi ilma jutumärkideta. Tühikutega veerunimesid sisaldavate ja Exceli andmeallikate puhul SharePoint määrati igale tühikule "_x0020_" , näiteks "Veeru nimi" kui"Column_x0020_Name" . Pärast seda versiooni värskendati kõik rakendused automaatselt selles artiklis kirjeldatud uuele süntaksile.
Süntaks
AddColumns(Tabel;ColumnName1,Valem1 [, ColumnName2,Valem2 , ... ] )
- Tabel - nõutav. Tabel, kus töötada.
- ColumnNames - nõutav. Lisatavate veergude nimed.
- Valemid - Nõutav. Valemid, mida iga kirje puhul hinnata. Tulemus lisatakse vastava uue veeru väärtusena. Selles valemis võite viidata tabeli teistele veergudele.
DropColumns( Tabel; ColumnName1 [, ColumnName2, ... ] )
- Tabel - nõutav. Tabel, kus töötada.
- ColumnNames - nõutav. Kukutatavate veergude nimed.
RenameColumns(Tabel,OldColumnName1,NewColumnName1 [, OldColumnName2,NewColumnName2 , ... ] )
- Tabel - nõutav. Tabel, kus töötada.
- OldColumnNames - nõutav. Algsest tabelist ümbernimetatavate veergude nimed. See element kuvatakse argumentide paaris esimesena (või igas argumendi paaris esimesena, kui valem sisaldab rohkem kui ühte paari).
- NewColumnNames - nõutav. Asendusnimed. See element kuvatakse argumentide paaris viimasena (või igas argumendi paaris viimasena, kui valem sisaldab rohkem kui ühte paari).
ShowColumns( Tabel; ColumnName1 [, ColumnName2, ... ] )
- Tabel - nõutav. Tabel, kus töötada.
- ColumnNames - nõutav. Lisatavate veergude nimed.
Näited
Selle jaotise näited kasutavad andmeallikat IceCreamSales, mis sisaldab andmeid selles tabelis.
Ükski nendest näidetest ei muuda andmeallikat IceCreamSales. Iga funktsioon muudab andmeallikas väärtust tabelina ja tagastab selle väärtuse tulemina.
Valem | Kirjeldus | Tulemus |
---|---|---|
AddColumns( IceCreamSales, Tulu, ÜhikuHind * Kogus Müüdud ) | Lisab tulemile veeru Revenue. Iga kirje puhul hinnatakse väärtust UnitPrice * QuantitySold ja tulemus paigutatakse uude veergu. | |
DropColumns( IceCreamSales, UnitPrice ) | Välistab tulemist veeru UnitPrice. Kasutage seda funktsiooni veergude välistamiseks ja funktsiooni ShowColumns nende kaasamiseks. | |
ShowColumns( IceCreamSales, Flavor ) | Kaasab tulemuseks ainult veeru Flavor. Kasutage seda funktsiooni veergude kaasamiseks ja funktsiooni DropColumns nende välistamiseks. | |
RenameColumns( IceCreamSales, UnitPrice, Hind) | Nimetab tulemis veeru UnitPrice ümber. | |
RenameColumns( IceCreamSales, UnitPrice, Hind, Kogus Müüdud, Arv) | Nimetab tulemis veerud UnitPrice ja QuantitySold ümber. | |
DropColumns( RenameColumns( AddColumns( IceCreamSales, tulud, UnitPrice * QuantitySold ), Ühikuhind, hind ), Kogus ) |
Teostab järgmised tabeliteisendused järjekorras, alustades valemi sisemusest:
|
Samm-sammult
Proovime mõningaid näiteid selle artikli varasemast ajast.
Looge kogum, lisades juhtelemendi nupp ja määrake sellele valemile atribuut OnSelect.
ClearCollect( IceCreamSales, Table( { Flavor: "Strawberry", UnitPrice: 1.99, QuantitySold: 20 }, { Flavor: "Chocolate", UnitPrice: 2.99, QuantitySold: 45 }, { Flavor: "Vanilla", UnitPrice: 1.50, QuantitySold: 35 } ) )
Valemi käitamiseks klõpsake klahvi Alt all hoides nuppu.
Lisage teine juhtelement Nupp ja määrake valemile selle atribuut OnSelect, seejärel käivitage see.
ClearCollect( FirstExample, AddColumns( IceCreamSales, Revenue, UnitPrice * QuantitySold ) )
Kogumi kuvamiseks valige menüüs Fail käsk Kogumikud, seejärel valige funktsioon IceCreamSales.
Nagu jooniselt näha, ei muuda teine valem seda kogu. Funktsiooni AddColumns kasutats väärtust IceCreamSales kirjutuskaitstud argumendina. Funktsioon ei muutnud tabelit, millele see argument viitab.
Valige FirstExample.
Nagu joonisel näha, tagastas teine valem uue tabeli lisatud veeruga. Funktsioon ClearCollect hõivas uue tabeli kogumis FirstExample, lisades midagi algsesse tabelisse, kuna see kulges funktsiooni kaudu ilma allikat muutmata.
Komponendi veergude vastendamine
Vaadake Veergude vastendamine.