Fungsi Hapus dan HapusJika

Berlaku untuk: Aplikasi kanvas Aplikasi Power Platform berbasis model CLI

Menghapus rekaman dari sumber data.

Catatan

Perintah PAC CLI pac power-fx tidak mendukung fungsi RemoveIf .

Description

Fungsi Remove

Gunakan fungsi Remove untuk menghapus rekaman atau rekaman tertentu dari sumber data.

Untuk koleksi, seluruh rekaman harus sesuai. Anda bisa menggunakan argumen RemoveFlags.All untuk menghapus semua salinan catatan; jika tidak, hanya satu salinan catatan yang dihapus.

Fungsi RemoveIf

Gunakan fungsi RemoveIf untuk menghapus rekaman atau rekaman berdasarkan kondisi atau rangkaian kondisi. Setiap kondisi dapat berupa rumus yang menghasilkan kolom true atau false dan dapat merujuk kolom pada sumber data berdasarkan nama. Setiap kondisi dievaluasi secara individu untuk setiap rekaman, dan rekaman akan dihapus jika semua kondisi dievaluasi ke true.

Remove dan RemoveIf menghasilkan sumber data yang dimodifikasi sebagai tabel. Anda hanya dapat menggunakan kedua fungsi ini dalam rumus perilaku.

Anda juga dapat menggunakan fungsi Clear untuk menghapus semua rekaman dalam koleksi.

Delegasi

Ketika digunakan dengan sumber data, fungsi-fungsi ini tidak dapat didelegasikan. Hanya bagian pertama sumber data yang akan diambil, lalu fungsi diterapkan. Ini mungkin tidak mewakili cerita lengkap. Peringatan mungkin muncul pada waktu penulisan untuk mengingatkan Anda tentang batasan ini.

Dukungan delegasi (Eksperimental)

Dukungan delegasi untuk RemoveIf kini berada di Pratinjau Eksperimental (NONAKTIF default) untuk sumber data yang mendukungnya. Jika sumber data tidak mendukung fitur ini, akan mengirim kueri ke server dan mengambil semua data yang cocok dengan ekspresi filter hingga maksium 500, 2000, Power Apps atau ukuran halaman data. Kemudian, itu akan melakukan operasi penghapusan pada masing-masing catatan tersebut dengan panggilan individual ke server.

Sintaks

Hapus (DataSource , Record1 [, Record2 , ... ] [, RemoveFlags.All ] )

  • DataSource – wajib. Sumber data yang berisi rekaman atau rekaman yang ingin anda hapus.
  • Record – Wajib. Rekaman atau rekaman untuk dihapus.
  • RemoveFlags.All – Opsional. Di koleksi, rekaman yang sama mungkin ditampilkan lebih dari satu kali. Anda dapat menambahkan argumen RemoveFlags.All untuk menghapus semua salinan rekaman.

Hapus (DataSource , Tabel [, RemoveFlags.All ] )

  • DataSource – wajib. Sumber data yang berisi rekaman yang ingin anda hapus.
  • Table – Wajib. Tabel rekaman untuk dihapus.
  • RemoveFlags.All – Opsional. Di koleksi, rekaman yang sama mungkin ditampilkan lebih dari satu kali. Anda dapat menambahkan argumen RemoveFlags.All untuk menghapus semua salinan rekaman.

RemoveIf( DataSource, Condition [, ... ] )

  • DataSource – wajib. Sumber data yang berisi rekaman atau rekaman yang ingin anda hapus.
  • Condition – Wajib. Rumus yang dievaluasi ke true untuk rekaman atau rekaman untuk dihapus. Anda dapat menggunakan nama kolom dari DataSource dalam rumus ini. Jika Anda menentukan beberapa Conditions, semua harus dievaluasi ke true untuk rekaman atau rekaman yang akan dihapus.

Contoh-rumus tunggal

Di contoh ini, Anda akan menghapus rekaman atau rekaman dalam sumber data yang bernama IceCream dan dimulai dengan data dalam tabel ini:

Contoh Icecream.

Membuat koleksi dengan rekaman sampel

Untuk membuat koleksi dengan data ini:

  1. Sisipkan kontrol Tombol.

  2. Atur properti OnSelect kontrol tombol ke rumus di bawah ini.

    ClearCollect( IceCream,
                  { ID: 1, Flavor: "Chocolate",  Quantity: 100 },
                  { ID: 2, Flavor: "Vanilla",    Quantity: 200 },
                  { ID: 3, Flavor: "Strawberry", Quantity: 300 }
    )
    
  3. Sambil menekan terus tombol Alt, pilih tombol:

Menghapus rekaman sampel dari koleksi menggunakan rumus

Rumus Description Hasil
Remove( IceCream,
Pencarian (Es Krim, Rasa = "Cokelat" ))
Menghapus rekaman Chocolate dari sumber data. Hasilnya dengan Vanilla dan Strawberry.

Sumber data IceCream telah dimodifikasi.
Remove( IceCream,
LookUp( IceCream, Rasa = "Cokelat" ), LookUp (IceCream, Rasa = "Strawberry") )
Menghapus dua rekaman dari sumber data. Hasil hanya dengan Vanilla.

Sumber data IceCream telah dimodifikasi.
RemoveIf( IceCream, Quantity > 150 ) Menghapus rekaman yang memiliki Quantity yang lebih besar dari 150. Hasil hanya dengan Cokelat.

Sumber data IceCream telah dimodifikasi.
RemoveIf( IceCream, Quantity > 150, Left( Flavor, 1 ) = "S" ) Menghapus rekaman yang memiliki Quantity yang lebih besar dari 150 dan Flavor diawali dengan S. Hasilnya dengan Cokelat dan Vanila.


Sumber data IceCream telah dimodifikasi.
RemoveIf( IceCream, true ) Menghapus semua rekaman dari sumber data. Hasil tanpa IceCream.

Sumber data IceCream telah dimodifikasi.

Dalam contoh ini, Anda akan menggunakan kontrol Galeri untuk mencantumkan rekaman dalam tabel. Anda kemudian dapat menggunakan fungsi Remove untuk menghapus item sesuai pilihan Anda.

Persiapan untuk data sampel

Contoh ini menggunakan tabel Kontak yang tersedia di Microsoft Dataverse dengan aplikasi dan data sampel. Anda dapat menyebarkan aplikasi sampel dan data saat Anda membuat lingkungan. Anda juga dapat menggunakan sumber data lainnya.

Dalam contoh ini, Anda akan menghapus item menggunakan tombol yang berada di luar galeri.

  1. Buat aplikasi kanvas kosong baru menggunakan tata letak Ponsel.

    Aplikasi kanvas kosong menggunakan tata letak ponsel.

  2. Dari panel kiri, pilih Sisipkan.

  3. Pilih Galeri vertikal.
    Kontrol Galeri akan ditambahkan ke layar Anda.

    Menggunakan Sisipkan panel alat untuk menambahkan kontrol galeri vertikal.

  4. Anda diminta untuk memilih sumber data tempat Anda dapat memilih sumber data dari sumber data yang tersedia.
    Contohnya, pilih tabel Kontak untuk menggunakan data sampel:

    Memilih tabel Kontak untuk ditampilkan di galeri.

    Galeri menampilkan item dari tabel ini:

    Galeri ditambahkan yang menampilkan tabel Kontak.

  5. Masukkan kontrol Tombol dari panel kiri:

    Menggunakan Sisipkan panel alat untuk menambahkan kontrol tombol.

  6. Pindahkan tombol yang ditambahkan di bawah item galeri:

    Memindahkan tombol.

  7. Perbarui properti teks tombol untuk Menghapus rekaman. Anda juga dapat menggunakan teks pilihan Anda:

    Mengubah nama tombol.

  8. Atur properti OnSelect untuk kontrol tombol ini ke rumus berikut:

    Remove( Contacts, Gallery1.Selected )
    

    Mengatur properti OnSelect pada kontrol tombol.

    Kontrol galeri membuat rekaman yang dipilih saat ini tersedia menggunakan properti Selected. Fungsi Remove mengacu pada rekaman yang dipilih ini untuk menghapusnya.

  9. Pratinjau aplikasi menggunakan tombol Putar di kanan atas, atau tekan F5 pada keyboard:

    Pratinjau aplikasi.

  10. Pilih rekaman yang akan dihapus, seperti rekaman Nancy dalam contoh ini:

    Memilih rekaman.

  11. Pilih Hapus rekaman:

    Galeri kontak, sekarang tanpa rekaman Nancy yang telah dihapus.

    Memilih tombol akan menghapus rekaman yang dipilih (dalam contoh ini, rekaman Nancy).

  12. Tutup pratinjau aplikasi.

    Tip

    Anda juga dapat menggunakan perilaku alternatif dengan tombol Alt, bukan menggunakan pratinjau aplikasi dengan tombol Putar atau F5.

Dalam contoh ini, Anda akan menghapus item menggunakan ikon yang berada di dalam galeri.

Membuat koleksi dengan data sampel

Jika Anda telah menyiapkan data sampel, lewati langkah ini dan pindahkan ke Ikon tempat sampah di dalam galeri.

  1. Tambahkan kontrol Tombol ke layar Anda.

  2. Atur properti OnSelect ke rumus berikut:

    ClearCollect( SampleContacts,
          { 'Full Name': "Yvonne McKay (sample)",      'Primary Email': "someone_a@example.com" },
          { 'Full Name': "Susanna Stubberod (sample)", 'Primary Email': "someone_b@example.com" },
          { 'Full Name': "Nancy Anderson (sample)",    'Primary Email': "someone_c@example.com" },
          { 'Full Name': "Maria Campbell (sample)",    'Primary Email': "someone_d@example.com" },
          { 'Full Name': "Robert Lyon (sample)",       'Primary Email': "someone_e@example.com" },
          { 'Full Name': "Paul Cannon (sample)",       'Primary Email': "someone_f@example.com" },
          { 'Full Name': "Rene Valdes (sample)",       'Primary Email': "someone_g@example.com" }
    )
    
  3. Sambil menekan terus tombol Alt, pilih tombol.

Koleksi sampel dibuat yang dapat Anda gunakan dalam contoh berikut.

  1. Buat aplikasi kanvas kosong baru menggunakan tata letak Ponsel.

    Aplikasi kanvas kosong menggunakan tata letak ponsel.

  2. Dari panel kiri, pilih Sisipkan.

  3. Pilih Galeri vertikal.
    Kontrol Galeri akan ditambahkan ke layar Anda.

    Menggunakan Sisipkan panel alat untuk menambahkan kontrol galeri vertikal.

  4. Anda diminta untuk memilih sumber data tempat Anda dapat memilih sumber data dari sumber data yang tersedia.
    Contohnya, pilih tabel Kontak untuk menggunakan data sampel:

    Memilih tabel Kontak untuk ditampilkan di galeri.

    Jika Anda membuat koleksi, pilih koleksinya:

    Contoh koleksi kontak.

  5. Pilih kontrol dalam item teratas di galeri.

    Untuk memastikan langkah berikutnya menyisipkan item ke dalam template galeri dan tidak berada di luar galeri, pastikan Anda mengikuti langkah ini sebelum beralih ke langkah berikutnya.

    Memilih rekaman teratas di galeri.

  6. Pilih Tambah ikon dari panel kiri.

    Menggunakan Sisipkan panel alat untuk menambahkan kontrol ikon.

    Catatan

    Tambahkan ikon menyisipkan ikon + di sisi kiri galeri, direplikasi untuk setiap item di galeri.

  7. Di item teratas, pindahkan ikon ke sisi kanan layar.

    Memindahkan ikon.

  8. Pilih properti Ikon untuk ikon dan atur ke rumus berikut untuk memperbarui gambar ikon sebagai ikon sampah:

    Icon.Trash
    

    Catatan

    Awalan Icon. hanya ditampilkan saat Anda secara aktif mengedit rumus.

    Mengubah ikon ke ikon tempat sampah.

  9. Atur properti OnSelect ke rumus berikut:

    Remove( [@Contacts], ThisItem )
    

    Catatan

    Anda harus menggunakan operator disambiguasi global[@...] dalam contoh ini dengan data sampel yang menggunakan tabel Kontak untuk menghindari konflik dengan relasi Satu ke Banyak. Jika Anda menggunakan sumber data seperti daftar atau tabel SQL Server, menggunakan operator disambiguasi global tidak diperlukan.

    OnSelect untuk ikon sampah.

  10. Pratinjau aplikasi menggunakan tombol Putar di kanan atas, atau tekan F5 pada keyboard.

  11. Pilih ikon sampah di sebelah rekaman, misalnya Maria:

    Galeri dengan salah satu kontak dihapus.

    Rekaman dihapus:

    Rekaman yang dihapus.

  12. Tutup pratinjau aplikasi.