Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
| Function | Berlaku pada |
|---|---|
| GroupBy |
|
| Ungroup |
|
Membuat grup dan menghapus grup rekamantabel.
Description
Fungsi GroupBy mengembalikan tabel dengan rekaman yang dikelompokkan bersama berdasarkan nilai dalam satu atau beberapa kolom. Rekaman dalam grup yang sama ditempatkan dalam satu rekaman, dengan ditambahkan kolom yang menyarangkan tabel kolom yang tersisa.
Fungsi membalikkan UngroupGroupBy proses. Fungsi ini menghasilkan tabel, memecahkan ke dalam rekaman terpisah dari rekaman yang dikelompokkan bersama.
Anda dapat mengelompokkan rekaman dengan menggunakan GroupBy, mengubah tabel yang dikembalikannya, lalu memisahkan grup rekaman dalam tabel yang dimodifikasi dengan menggunakan Ungroup. Misalnya, Anda dapat menghapus grup rekaman dengan mengikuti pendekatan ini:
- Gunakan fungsi .GroupBy
- Gunakan fungsi Filter untuk menghapus seluruh grup rekaman.
- Gunakan fungsi .Ungroup
Anda juga dapat mengagregasikan hasil berdasarkan pengelompokan:
- Gunakan fungsi .GroupBy
- Gunakan fungsi AddColumns dengan Sum,Average..., dan fungsi agregat lainnya untuk menambahkan kolom baru, yang merupakan agregat tabel grup.
- Gunakan fungsi DropColumns untuk membuka tabel grup.
Ungroup mencoba mempertahankan urutan asli rekaman yang disalurkan ke GroupBy. Hal ini tidak selalu memungkinkan (misalnya, jika tabel asli berisi rekaman kosong).
Tabel adalah nilai dalam Power Apps, seperti string atau angka. Anda dapat menentukan tabel sebagai argumen untuk fungsi, dan fungsi dapat menghasilkan tabel. GroupBy dan Ungroup tidak mengubah tabel; sebaliknya mereka mengambil tabel sebagai argumen dan mengembalikan tabel yang berbeda. Lihat: bekerja dengan tabel untuk detail lebih lanjut.
Catatan
Sebelum Power Apps versi 3.24042, nama kolom ditentukan dengan string teks menggunakan tanda kutip ganda, dan jika terhubung ke sumber data mereka juga harus menjadi nama logis. Misalnya, nama logis "cr43e_name" dengan tanda kutip ganda digunakan sebagai pengganti nama tampilan Nama tanpa tanda kutip. Untuk dan SharePoint sumber data Excel yang berisi nama kolom dengan spasi, setiap spasi ditentukan dengan "_x0020_", misalnya "Nama Kolom"sebagai"Column_x0020_Name". Setelah versi ini, semua aplikasi secara otomatis diperbarui ke sintaks baru yang dijelaskan dalam artikel ini.
Sintaks
GroupBy( Table, ColumnName1 [, ColumnName2, ... ], GroupColumnName )
- Tabel - Wajib. Tabel yang akan dikelompokkan.
- ColumnNames - Wajib. Nama kolom di Tabel yang digunakan untuk mengelompokkan rekaman. Kolom ini menjadi kolom dalam tabel hasil.
- GroupColumnName - Wajib. Nama kolom untuk penyimpanan data rekaman tidak dalam ColumnName.
Ungroup( Tabel, GroupColumnName )
- Tabel - Wajib. Tabel yang akan dihapus kelompoknya.
- GroupColumnName - Wajib. Kolom yang berisi penyiapan data rekaman dengan GroupBy fungsi .
Contoh
Membuat koleksi
- Tambahkan tombol, dan atur properti Teks agar tombolnya menampilkan Asli.
- Atur properti OnSelect pada tombol "Asli" ke rumus ini:
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}
)
Sambil menekan terus tombol Alt, pilih tombol Asli.
Anda baru saja membuat koleksi, bernama CityPopulations, yang berisi data ini:
Untuk menampilkan koleksi ini, pilih Koleksi pada menu File, lalu pilih koleksi CityPopulations. Lima rekaman pertama dalam koleksi akan ditampilkan:
Rekaman grup
Tambahkan tombol lain, dan atur properti Teks ke "Grup".
Atur properti OnSelect dari tombol ini ke rumus ini:
ClearCollect( CitiesByCountry, GroupBy(CityPopulations, Country, Cities )
Sambil menekan terus tombol Alt, pilih tombol Grup.
Anda baru saja membuat koleksi, bernama CitiesByCountry, di mana rekaman dari koleksi sebelumnya dikelompokkan berdasarkan kolom Country.
Untuk menampilkan lima rekaman pertama dalam koleksi ini, pilih Koleksi pada menu File.
Untuk menampilkan populasi kota di suatu negara/wilayah, pilih ikon tabel di kolom Kota untuk negara/wilayah tersebut (misalnya, Jerman):
Filter dan hapus grup rekaman
Tambahkan tombol lainnya, dan atur properti Teks agar tombolnya menampilkan "Filter".
Atur properti OnSelect dari tombol ini ke rumus ini:
ClearCollect( CitiesByCountryFiltered, Filter( CitiesByCountry, "e" di Country ) )
Sambil menekan terus tombol Alt, pilih tombol yang Anda tambahkan.
Anda baru saja membuat koleksi ketiga, bernama CitiesByCountryFiltered, yang mencakup hanya negara yang memiliki "e" dalam namanya (yaitu, bukan Spanyol atau Italia).
Tambahkan satu tombol lagi, dan atur properti Teksnya sehingga tombol menunjukkan "Ungroup".
Atur properti OnSelect dari tombol ini ke rumus ini:
ClearCollect( CityPopulationsUngrouped, Ungroup( CitiesByCountryFiltered, Cities )
Yang menghasilkan:
Hasil agregat
Operasi lain yang dapat kita lakukan pada tabel yang dikelompokkan adalah mengkompilasi hasilnya. Dalam contoh ini, kita akan menjumlahkan populasi kota-kota besar di setiap negara/wilayah.
Tambahkan tombol lainnya, dan atur properti Teks agar tombolnya menampilkan "Total".
Atur properti OnSelect pada tombol Total ke rumus ini:
ClearCollect( CityPopulationsSum, AddColumns( CitiesByCountry, 'Jumlah Populasi Kota', Sum( Kota, Populasi ) )
Yang menghasilkan:
AddColumns dimulai dengan koleksi dasar CitiesByCountry dan menambahkan kolom baru Jumlah Populasi Kota. Nilai kolom ini dihitung baris demi baris, berdasarkan jumlah Sum( Cities, Population ). AddColumns menyediakan nilai kolom Kota (tabel) untuk setiap baris, dan Sum menambahkan Populasi untuk setiap baris sub tabel ini.
Sekarang setelah kita memiliki jumlah yang kita inginkan, kita dapat menggunakan DropColumns untuk menghapus sub-tabel.
Tambahkan tombol lainnya, dan atur properti Teks agar tombolnya menampilkan "SumOnly".
Atur properti OnSelect pada tombol "SumOnly" ke rumus ini:
ClearCollect( CityPopulationsSumOnly, DropColumns( CityPopulationsSum, Cities )
Yang menghasilkan:
Perhatikan bahwa kita tidak perlu menghapus kelompok tabel ini.