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.
Berlaku untuk: Aplikasi Kanvas
Copilot Studio
Desktop mengalir
aplikasi
berbasis model Power Platform CLI
Fungsi
Dataverse Power Pages
Mengurutkan tabel.
Catatan
Perintah pac pac power-fx PAC tidak mendukung fungsi.SortByColumns
Description
Fungsi mengurutkan Sort tabel berdasarkan rumus.
Rumus dievaluasi untuk setiap rekaman tabel, dan hasil digunakan untuk mengurutkan tabel. Rumus harus menghasilkan angka, string, atau nilai Boolean; tidak dapat menghasilkan tabel atau rekaman.
Bidang rekaman yang sedang diproses tersedia dalam formula. Menggunakan operator ThisRecord atau hanya bidang referensi berdasarkan nama seperti nilai lainnya. Operator As juga dapat digunakan untuk menamai rekaman yang sedang diproses yang dapat membantu membuat formula lebih mudah dipahami dan membuat rekaman bersarang dapat diakses. Untuk informasi selengkapnya, lihat contoh di bawah ini dan menggunakan cakupan rekaman.
Untuk mengurutkan terlebih dahulu menurut satu kolom lalu menurut kolom lainnya, Anda menyematkan Sort rumus di dalam kolom lainnya. Misalnya, Anda dapat menggunakan rumus ini untuk mengurutkan tabel Kontak terlebih dahulu dengan kolom LastName lalu dengan kolom FirstName : Sort( ( SortKontak, LastName ), FirstName )
Fungsi ini SortByColumns juga dapat digunakan untuk mengurutkan tabel berdasarkan satu atau beberapa kolom.
Daftar parameter untuk SortByColumns menyediakan nama kolom untuk diurutkan menurut dan arah pengurutan per kolom. Pengurutan dilakukan dalam urutan parameter (diurutkan terlebih dulu oleh kolom pertama, kedua, dan seterusnya). Nama kolom ditentukan sebagai string, memerlukan tanda kutip ganda jika langsung disertakan dalam daftar parameter. Misalnya, SortByColumns( CustomerTable, "LastName" ).
Anda bisa menggabungkan SortByColumns dengan kontrol turun bawah atau kotak Daftar untuk memungkinkan pengguna memilih kolom mana yang akan diurutkan.
Selain mengurutkan naik atau turun, SortByColumns bisa mengurutkan berdasarkan satu tabel kolom nilai. Misalnya, Anda dapat mengurutkan rekaman berdasarkan nama hari dalam seminggu dengan memasok ["Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu", "Minggu"] sebagai urutan pengurutan. Semua rekaman yang memiliki Senin " akan muncul pertama, diikuti dengan Selasa, dan seterusnya. Rekaman yang ditemukan yang tidak muncul di tabel pengurutan diletakkan di akhir daftar.
Tabel adalah nilai dalam Power Apps, seperti string atau angka. Dapat diteruskan ke dan dikembalikan dari fungsi. Sort dan SortByColumn tidak mengubah tabel; sebaliknya mereka mengambil tabel sebagai argumen dan mengembalikan tabel baru yang telah diurutkan. Lihat: bekerja dengan tabel untuk detail lebih lanjut.
Delegasi
Jika memungkinkan, Power Apps akan mendelegasikan operasi filter dan pengurutan ke sumber data dan halaman melalui hasil sesuai permintaan. Contohnya, saat Anda memulai aplikasi yang menampilkan kontrol Galeri yang berisi data, hanya set rekaman pertama yang dibawa ke perangkat pada awalnya. Ketika pengguna menggulir, data tambahan dihadirkan dari sumber data. Ini mempercepat waktu mulai untuk aplikasi dan memungkinkan akses ke himpunan data yang sangat besar.
Namun, delegasi mungkin tidak selalu dapat dilakukan. Sumber data bervariasi dalam hal fungsi dan operator yang didukung dengan delegasi. Jika delegasi lengkap atas sebuah formula tidak tersedia, lingkungan penulis akan memberi tanda berupa peringatan pada porsi yang tidak dapat didelegasikan. Jika memungkinkan, sebaiknya ubah formula untuk menghindari fungsi dan operator yang tidak dapat didelegasikan. Detail daftar delegasi dengan sumber data dan operasi yang dapat didelegasikan.
Jika delegasi tidak memungkinkan, Power Apps hanya akan menarik kumpulan kecil data untuk dikerjakan secara lokal. Fungsi filter dan urutkan akan dioperasikan dalam kumpulan rekaman yang lebih sedikit. Hal yang tersedia di Galeri mungkin bukan merupakan gambaran utuhnya, dan dapat membingungkan bagi pengguna.
Lihat ikhtisar delegasi untuk informasi selengkapnya.
Sintaks
Sort( Tabel, Rumus [, SortOrder ] )
- Tabel - Wajib. Tabel yang akan diurutkan.
- Rumus- Wajib. Rumus ini dievaluasi untuk setiap rekaman tabel, dan hasil digunakan untuk mengurutkan tabel. Anda dapat merujuk kolom dalam tabel.
- SortOrder - Opsional. Tentukan SortOrder.Descending untuk mengurutkan tabel dalam urutan menurun. SortOrder.Ascending adalah nilai default.
SortByColumns( Table, ColumnName1 [, SortOrder1, ColumnName2, SortOrder2, ... ] )
Tabel - Wajib. Tabel yang akan diurutkan.
ColumnNames - Wajib. Nama kolom yang akan diurutkan, sebagai string.
SortOrders - Opsional. SortOrder.Ascending atau SortOrder.Descending. SortOrder.Ascending adalah default. Jika beberapa ColumnNames disediakan, semua kolom terakhir harus mencakup SortOrder.
Catatan
Untuk sumber data SharePoint dan Excel yang berisi nama kolom dengan spasi, tentukan setiap ruang sebagai "_x0020_". Misalnya, tentukan "Nama Kolom" sebagai "Column_x0020_Name".
SortByColumns( Tabel, ColumnName, SortOrderTable )
Tabel - Wajib. Tabel yang akan diurutkan.
ColumnName - Wajib. Nama kolom yang akan diurutkan, sebagai string.
SortOrderTable - Wajib. Tabel kolom tunggal nilai yang akan diurutkan.
Catatan
Untuk sumber data SharePoint dan Excel yang berisi nama kolom dengan spasi, tentukan setiap ruang sebagai "_x0020_". Misalnya, tentukan "Nama Kolom" sebagai "Column_x0020_Name".
Contoh
Untuk contoh berikut, kita akan menggunakan IceCreamsumber data, yang berisi data dalam tabel ini:
| Rumus | Description | Hasil |
|---|---|---|
|
Sort(IceCream, Rasa) SortByColumns(IceCream, "Rasa" ) |
Mengurutkan IceCream berdasarkan kolom Flavor. Kolom Flavor berisi string, sehingga tabel diurutkan berdasarkan abjad. Secara default, urutan pengurutannya naik. |
|
|
Sort(IceCream, Kuantitas) SortByColumns(IceCream, "Kuantitas" ) |
Mengurutkan IceCream berdasarkan kolom Quantity. Kolom Quantity berisi angka, sehingga tabel diurutkan secara numerik. Secara default, urutan pengurutannya naik. |
|
|
Sort( IceCream, Kuantitas, SortOrder.Turun ) SortByColumns(IceCream, "Quantity", SortOrder.Descending) |
Mengurutkan IceCream berdasarkan kolom Quantity. Kolom Quantity berisi angka, sehingga pengurutan dilakukan secara numerik. Perintah pengurutan telah ditentukan sebagai menurun. |
|
| Sort( IceCream, Kuantitas + OnOrder ) | Mengurutkan IceCream berdasarkan total Quantity dan OnOrder untuk setiap rekaman secara individu. Totalnya adalah angka, sehingga tabel diurutkan secara numerik. Secara default, urutan pengurutannya naik. Karena kita mengurutkan berdasarkan rumus dan bukan berdasarkan nilai kolom mentah, tidak ada yang setara menggunakan SortByColumns. |
|
|
Sort( Sort( IceCream, OnOrder ), Kuantitas ) SortByColumns( IceCream, "OnOrder", SortOrder.Ascending, "Quantity", SortOrder.Ascending ) |
Mengurutkan IceCream pertama berdasarkan kolom OnOrder, lalu berdasarkan kolom Quantity. Perhatikan bahwa "Pistachio" naik di atas "Vanilla" dalam urutan pertama berdasarkan OnOrder, dan kemudian bersama-sama pindah ke tempat yang sesuai berdasarkan Quantity. |
|
| SortByColumns(IceCream, "Flavor", [ "Pistachio", "Strawberry" ] ) | Mengurutkan IceCream berdasarkan kolom Flavor berdasarkan pada satu kolom tabel berisi "Pistachio" dan "Strawberry". Rekaman yang memiliki Flavor "Pistachio" akan muncul pertama kali pada hasilnya, diikuti oleh rekaman yang berisi "Strawberry". Untuk nilai pada kolom Flavor yang tidak cocok, seperti "Vanilla", nilai tersebut akan muncul setelah item yang dicocokkan. |
|
Langkah demi langkah
Untuk menjalankan contoh ini sendiri, buat sumber data IceCream sebagai koleksi:
- Tambahkan tombol dan atur properti OnSelect ke formula ini:
ClearCollect( Es Krim, { Rasa: "Cokelat", Jumlah: 100, Pesanan: 150 }, { Rasa: "Vanila", Kuantitas: 200, Pesanan: 20, } { Rasa: "Stroberi", Kuantitas: 300, Pesanan: 0 }, Rasa { : "Cokelat Mint", Jumlah: 60, Pesanan: 100 }, { Rasa: "Pistachio", Kuantitas: 200, Pesanan: 10) } - Melihat pratinjau aplikasi, pilih tombol tersebut, lalu tekan Esc untuk kembali ke ruang kerja default.
- Pilih Koleksi pada menu File untuk menampilkan koleksi yang baru saja Anda buat, lalu tekan Esc untuk kembali ke ruang kerja default.
Sort
Tambahkan tombol lain, dan atur properti OnSelect ke formula ini:
ClearCollect( SortByFlavor, Sort(IceCream, Flavor )Formula sebelumnya membuat koleksi kedua, bernama SortByFlavor, yang berisi data yang sama seperti Ice Cream. Namun, koleksi baru berisi data yang diurutkan secara abjad berdasarkan kolom Flavor dalam urutan menaik.
Tekan F5 dan pilih tombol baru, lalu tekan Esc.
Pilih Koleksi pada menu File untuk menampilkan kedua koleksi, lalu tekan Esc untuk kembali ke ruang kerja default.
Ulangi tiga langkah terakhir, tetapi ubah nama koleksi yang ingin Anda buat, dan ganti Sort rumus dengan rumus yang berbeda dari tabel contoh sebelumnya di bagian ini yang menggunakan Sort.
SortByColumns
Tambahkan tombol lain, dan atur properti OnSelect ke formula ini:
ClearCollect( SortByQuantity, SortByColumns( IceCream, "Quantity", SortOrder.Ascending, "Flavor", SortOrder.Descending )Rumus sebelumnya membuat koleksi ketiga, bernama SortByQuantity, yang berisi data yang sama seperti Ice Cream. Namun, koleksi baru berisi data diurutkan secara numerik berdasarkan kolom Quantity dalam urutan menaik, lalu dengan kolom Flavor dalam urutan menurun.
Tekan F5 dan pilih tombol baru, lalu tekan Esc.
Pilih Koleksi pada menu File untuk menampilkan ketiga koleksi, lalu tekan Esc untuk kembali ke ruang kerja default.
Ulangi tiga langkah terakhir, tetapi ubah nama koleksi yang ingin Anda buat, dan ganti SortByColumns rumus dengan rumus yang berbeda dari tabel contoh sebelumnya di bagian ini yang menggunakan SortByColumns.