Các hàm Remove và RemoveIf

Áp dụng cho: Ứng dụng canvas Ứng dụng dựa trên mô hình Power Platform CLI

Xóa bản ghi khỏi nguồn dữ liệu.

Lưu ý

Các lệnh PAC CLI pac power-fx không hỗ trợ chức năng RemoveIf .

Description

Hàm Remove

Dùng hàm Remove để xóa một hoặc nhiều bản ghi cụ thể khỏi nguồn dữ liệu.

Đối với bộ sưu tập, toàn bộ bản ghi phải khớp. Bạn có thể sử dụng đối số RemoveFlags.All để xóa tất cả các bản sao của một bản ghi; nếu không, chỉ có một bản sao của bản ghi bị xóa.

Hàm RemoveIf

Dùng hàm RemoveIf để xóa một hoặc nhiều bản ghi dựa trên một điều kiện hoặc một tập hợp các điều kiện. Mỗi điều kiện có thể là bất kỳ công thức nào trả về giá trị true hoặc false và có thể tham chiếu cột của nguồn dữ liệu theo tên. Hàm đánh giá riêng mỗi điều kiện cho từng bản ghi và sẽ xóa bản ghi nếu đánh giá rằng tất cả các điều kiện là true.

Hàm Remove và hàm RemoveIf trả về nguồn dữ liệu đã sửa đổi dưới dạng bảng. Bạn chỉ có thể sử dụng cả 2 hàm này trong công thức hành vi.

Bạn cũng có thể sử dụng hàm Clear để xóa tất cả các bản ghi trong bộ sưu tập.

Đại diện

Khi được sử dụng với nguồn dữ liệu, các chức năng này không thể được ủy quyền. Chỉ có phần đầu tiên của nguồn dữ liệu mới được truy xuất, phần còn lại sau đó sẽ áp dụng hàm. Điều này có thể không đại diện cho câu chuyện hoàn chỉnh. Một cảnh báo có thể xuất hiện tại thời điểm soạn thảo để nhắc nhở bạn về hạn chế này.

Hỗ trợ ủy quyền (Thử nghiệm)

Hỗ trợ ủy quyền cho RemoveIf hiện ở trong Bản xem trước thử nghiệm (TẮT mặc định) cho các nguồn dữ liệu hỗ trợ nó. Nếu nguồn dữ liệu không hỗ trợ tính năng này Power Apps sẽ gửi truy vấn đến máy chủ và truy xuất tất cả dữ liệu khớp với biểu thức bộ lọc với kích thước tối đa là 500, 2000 hoặc kích thước trang dữ liệu. Sau đó, nó sẽ thực hiện thao tác xóa trên từng bản ghi đó bằng các lệnh gọi riêng lẻ đến máy chủ.

Cú pháp

Xóa( DataSource, Bản ghi1 [, Bản ghi2 , ... ] [, RemoveFlags.All ] )

  • DataSource – Bắt buộc. Nguồn dữ liệu có chứa (các) bản ghi mà bạn muốn xóa.
  • Record – Bắt buộc. (Các) bản ghi cần xóa.
  • RemoveFlags.All – Tùy chọn. Trong bộ sưu tập, một bản ghi có thể xuất hiện nhiều lần. Bạn có thể thêm đối số RemoveFlags.All để xóa tất cả các bản sao của bản ghi.

Xóa( DataSource, Bảng [, Xóa cờ .Tất cả ] )

  • DataSource – Bắt buộc. Nguồn dữ liệu có chứa các bản ghi mà bạn muốn xóa.
  • Table – Bắt buộc. Bảng chứa các bản ghi cần xóa.
  • RemoveFlags.All – Tùy chọn. Trong bộ sưu tập, một bản ghi có thể xuất hiện nhiều lần. Bạn có thể thêm đối số RemoveFlags.All để xóa tất cả các bản sao của bản ghi.

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

  • DataSource – Bắt buộc. Nguồn dữ liệu có chứa (các) bản ghi mà bạn muốn xóa.
  • Condition(s) – Bắt buộc. Công thức để đánh giá là true đối với (các) bản ghi cần xóa. Bạn có thể sử dụng các tên cột trong DataSource (Nguồn dữ liệu) cho công thức. Nếu bạn chỉ định nhiều Conditions (Điều kiện), hàm sẽ đánh giá tất cả các điều kiện đó là true đối với (các) bản ghi cần xóa.

Ví dụ - một công thức

Trong các ví dụ này, bạn sẽ xóa một hoặc nhiều bản ghi trong nguồn dữ liệu có tên IceCream (Kem) và bắt đầu với dữ liệu trong bảng sau:

Ví dụ về IceCream.

Tạo một bộ sưu tập với các bản ghi mẫu

Cách tạo bộ sưu tập với dữ liệu này:

  1. Thêm công cụ điều khiển Nút.

  2. Đặt thuộc tính OnSelect của nút thành công thức sau:

    ClearCollect( IceCream,
                  { ID: 1, Flavor: "Chocolate",  Quantity: 100 },
                  { ID: 2, Flavor: "Vanilla",    Quantity: 200 },
                  { ID: 3, Flavor: "Strawberry", Quantity: 300 }
    )
    
  3. Hãy chọn nút thứ hai đồng thời nhấn và giữ phím Alt:

Xóa bản ghi mẫu khỏi bộ sưu tập bằng công thức

Công thức Description Kết quả
Remove( IceCream,
Tra cứu(Kem, Hương vị="Sô-cô-la" ))
Xóa bản ghi Chocolate (Sô cô la) khỏi nguồn dữ liệu. Kết quả với Vani và Dâu.

Nguồn dữ liệu IceCream (Kem) cũng đã được sửa đổi.
Remove( IceCream,
LookUp( IceCream, Flavor="Sôcôla" ), LookUp( IceCream, Flavor="Strawberry" ) )
Xóa 2 bản ghi khỏi nguồn dữ liệu. Kết quả chỉ có Vani.

Nguồn dữ liệu IceCream (Kem) cũng đã được sửa đổi.
RemoveIf( IceCream, Quantity > 150 ) Xóa các bản ghi có Quantity (Số lượng) lớn hơn 150. Kết quả chỉ có Sôcôla.

Nguồn dữ liệu IceCream (Kem) cũng đã được sửa đổi.
RemoveIf( IceCream, Quantity > 150, Left( Flavor, 1 ) = "S" ) Xóa các bản ghi có Quantity (Số lượng) lớn hơn 150 và Flavor (Hương vị) bắt đầu bằng S. Kết quả với Sôcôla và Vani.


Nguồn dữ liệu IceCream (Kem) cũng đã được sửa đổi.
RemoveIf( IceCream, true ) Xóa tất cả bản ghi khỏi nguồn dữ liệu. Kết quả không có IceCream.

Nguồn dữ liệu IceCream (Kem) cũng đã được sửa đổi.

Trong ví dụ này, bạn sẽ sử dụng công cụ điều khiển Thư viện để liệt kê các bản ghi trong một bảng. Sau đó, sử dụng hàm Remove để xóa mục có chọn lọc.

Chuẩn bị dữ liệu mẫu

Ví dụ này sử dụng bảng Danh bạ trong Microsoft Dataverse có sẵn với ứng dụng và dữ liệu mẫu. Bạn có thể triển khai dữ liệu và ứng dụng mẫu khi tạo môi trường. Bạn cũng có thể sử dụng bất kỳ nguồn dữ liệu nào khác.

Trong ví dụ này, bạn sẽ xóa một mục bằng nút bên ngoài thư viện.

  1. Tạo một ứng dụng canvas trống mới sử dụng bố cục Điện thoại.

    Ứng dụng canvas trống sử dụng bố cục Điện thoại.

  2. Chọn Insert (Chèn) từ ngăn bên trái.

  3. Chọn Vertical gallery (Thư viện dọc).
    Công cụ điều khiển Thư viện sẽ được thêm vào màn hình của bạn.

    Sử dụng ngăn công cụ Chèn để thêm công cụ điều khiển thư viện dạng dọc.

  4. Bạn được nhắc chọn nguồn dữ liệu từ các nguồn dữ liệu có sẵn.
    Ví dụ: chọn bảng Danh bạ để sử dụng dữ liệu mẫu:

    Chọn bảng Danh bạ để hiển thị trong thư viện.

    Thư viện hiển thị các mục từ bảng này:

    Đã thêm thư viện hiển thị bảng Danh bạ.

  5. Thêm công cụ điều khiển Nút từ ngăn bên trái:

    Sử dụng ngăn công cụ Chèn để thêm công cụ điều khiển nút.

  6. Di chuyển nút đã thêm xuống phía dưới các mục trong thư viện:

    Nút Di chuyển.

  7. Cập nhật thuộc tính văn bản của nút thành Remove record (Xóa bản ghi). Bạn cũng có thể chọn sử dụng văn bản khác:

    Nút Đổi tên.

  8. Đặt thuộc tính OnSelect của công cụ điều khiển nút này thành công thức sau:

    Remove( Contacts, Gallery1.Selected )
    

    Đặt thuộc tính OnSelect của công cụ điều khiển nút.

    Công cụ điều khiển thư viện hiển thị bản ghi hiện được chọn bằng cách sử dụng thuộc tính Selected (Đã chọn). Hàm Remove tham chiếu đến bản ghi được chọn này để xóa bản ghi đó.

  9. Xem trước ứng dụng bằng cách sử dụng nút Play (Phát) ở trên cùng bên phải hoặc nhấn F5 trên bàn phím:

    Xem trước ứng dụng.

  10. Chọn một bản ghi để xóa, chẳng hạn như bản ghi của Nancy trong ví dụ sau:

    Chọn bản ghi.

  11. Chọn Remove record (Xóa bản ghi):

    Thư viện người liên hệ giờ sẽ không còn bản ghi Nancy đã bị xóa.

    Khi chọn nút này, bản ghi đã chọn (trong ví dụ này là bản ghi của Nancy) sẽ bị xóa.

  12. Đóng bản xem trước ứng dụng.

    Tiền boa

    Bạn cũng có thể nhấn phím Alt để đóng bản xem trước ứng dụng, thay vì nhấn nút Play hoặc phím F5 để mở bản xem trước ứng dụng.

Trong ví dụ này, bạn sẽ xóa một mục bằng icon (biểu tượng) bên trong thư viện.

Tạo thư viện bằng dữ liệu mẫu

Nếu bạn đã chuẩn bị dữ liệu mẫu, hãy bỏ qua bước này và chuyển đến Biểu tượng thùng rác trong thư viện.

  1. Thêm một công cụ điều khiển có tên là Nút vào màn hình.

  2. Để đặt thuộc tính OnSelect thành công thức sau:

    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. Hãy chọn nút này đồng thời nhấn giữ phím Alt.

Bạn có thể sử dụng bộ sưu tập mẫu được tạo trong ví dụ sau.

  1. Tạo một ứng dụng canvas trống mới sử dụng bố cục Điện thoại.

    Ứng dụng canvas trống sử dụng bố cục Điện thoại.

  2. Chọn Insert (Chèn) từ ngăn bên trái.

  3. Chọn Vertical gallery (Thư viện dọc).
    Công cụ điều khiển Thư viện sẽ được thêm vào màn hình của bạn.

    Sử dụng ngăn công cụ Chèn để thêm công cụ điều khiển thư viện dạng dọc.

  4. Bạn được nhắc chọn nguồn dữ liệu từ các nguồn dữ liệu có sẵn.
    Ví dụ: chọn bảng Danh bạ để sử dụng dữ liệu mẫu:

    Chọn bảng Danh bạ để hiển thị trong thư viện.

    Nếu bạn đã tạo một bộ sưu tập, hãy chọn bộ sưu tập này:

    Bộ sưu tập người liên hệ mẫu.

  5. Chọn công cụ điều khiển ở mục trên cùng trong thư viện:

    Để đảm bảo bước tiếp theo là thêm mục vào mẫu trong thư viện chứ không phải bên ngoài thư viện, hãy nhớ làm theo bước này rồi mới chuyển sang bước tiếp theo.

    Chọn bản ghi trên cùng trong thư viện.

  6. Chọn Add icon (Thêm biểu tượng) ở khung bên trái.

    Sử dụng ngăn công cụ Chèn để thêm công cụ điều khiển biểu tượng.

    Lưu ý

    Thao tác nhấn vào Add icon (Thêm biểu tượng) sẽ thêm biểu tượng + ở phía bên trái của thư viện, được sao chép cho từng mục trong thư viện.

  7. Ở mục trên cùng, hãy di chuyển biểu tượng sang bên phải màn hình.

    Di chuyển biểu tượng.

  8. Chọn thuộc tính Icon (Biểu tượng) cho biểu tượng và đặt thành công thức sau để cập nhật hình ảnh thùng rác cho biểu tượng:

    Icon.Trash
    

    Lưu ý

    Tiền tố Icon. chỉ hiển thị khi bạn chủ động chỉnh sửa công thức.

    Thay đổi biểu tượng thành biểu tượng thùng rác.

  9. Để đặt thuộc tính OnSelect thành công thức sau:

    Remove( [@Contacts], ThisItem )
    

    Lưu ý

    Bạn phải dùng toán tử định hướng toàn cầu[@...] trong ví dụ này với dữ liệu mẫu sử dụng bảng Contacts (Danh bạ) để tránh xung đột với mối quan hệ Một-nhiều. Nếu bạn sử dụng các nguồn dữ liệu như danh sách hoặc bảng SQL Server, không bắt buộc phải sử dụng toán tử định hướng toàn cầu.

    OnSelect của biểu tượng thùng rác.

  10. Xem trước ứng dụng bằng cách sử dụng nút Play (Phát) ở trên cùng bên phải hoặc nhấn F5 trên bàn phím.

  11. Chọn biểu tượng thùng rác bên cạnh bản ghi, ví dụ: bản ghi của Maria:

    Thư viện với một trong những liên hệ bị xóa.

    Đã xóa bản ghi:

    Bản ghi đã xóa.

  12. Đóng bản xem trước ứng dụng.