Chia sẻ qua


Blank, Coalesce, và IsBlankcác hàm IsEmpty

Chức năng Áp dụng cho
Blank Ứng dụng Canvas Copilot Studio Desktop dòng công thức Dataverse cột Công thức dựa trên mô hình ứng dụng Power Platform CLI Chức năng dữ liệu
Coalesce
IsEmpty
Ứng dụng Canvas Copilot Studio Desktop dòng ứng dụng dựa trên mô hình Power Platform CLI Chức năng đảo dữ liệu Power Pages
IsBlank Ứng dụng Canvas Copilot Studio Desktop flows Dataverse formula columns Các ứng dụng dựa trên mô hình Power Platform CLI Dataverse functions Power Pages

Kiểm tra xem có phải một giá trị rỗng hoặc một bảng không chứa bản ghi phải không và chỉ ra cách tạo giá trị blank (rỗng).

Tổng quan

Blank là chỗ dành sẵn cho "không có giá trị" hoặc "giá trị không xác định". Ví dụ: thuộc tính Selected của điều khiển Hộp tổ hợp bị trống nếu người dùng chưa chọn. Nhiều nguồn dữ liệu có thể lưu trữ và trả về các giá trị NULL, biểu thị bằng giá trị blank trong Power Apps.

Bất kỳ thuộc tính hoặc giá trị được tính toán nào trong Power Apps đều có thể là blank. Ví dụ: giá trị Boolean thường có 1 trong 2 giá trị: true hoặc false. Nhưng ngoài hai điều này, nó cũng có thể để trống chỉ ra rằng trạng thái chưa được biết đến. Điều này tương tự như Microsoft Excel, trong đó một ô bảng tính ban đầu rỗng, không có nội dung nhưng có thể chứa các giá trị TRUE hoặc FALSE (cùng với các giá trị khác). Nội dung của ô lại có thể bị xóa bất cứ lúc nào, trở về trạng thái blank.

Chuỗi rỗng là chuỗi không chứa ký tự nào. Hàm Len trả về 0 cho một chuỗi như vậy và có thể nằm trong công thức có hai dấu ngoặc kép đi liền nhau "". Một số công cụ điều khiển và nguồn dữ liệu sử dụng chuỗi trống để biểu thị tình trạng "không có giá trị". Để đơn giản hóa việc tạo ứng dụng, hàm IsBlank và các hàm Coalesce kiểm tra cả giá trị trống hoặc chuỗi trống.

Trong ngữ cảnh của hàm IsEmpty , rỗng dành riêng cho bảng không chứa bản ghi. Cấu trúc bảng có thể còn nguyên vẹn, hoàn chỉnh với tên cột, nhưng không có dữ liệu trong bảng. Ban đầu, một bảng có thể trống, sau đó có các bản ghi và không còn trống nữa. Tuy nhiên, về sau các bản ghi có thể bị xóa và bảng lại trống.

Blank

Hàm Blank trả về giá trị trống. Sử dụng hàm này để lưu trữ giá trị NULL trong nguồn dữ liệu hỗ trợ các giá trị này, loại bỏ bất kỳ giá trị nào khỏi trường một cách hiệu quả.

IsBlank

Hàm IsBlank kiểm tra giá trị trống hoặc chuỗi trống. Kiểm tra bao gồm các chuỗi trống để dễ dàng tạo ứng dụng vì một số nguồn dữ liệu và điều khiển sử dụng chuỗi trống khi không có giá trị nào. Để kiểm tra cụ thể cho việc sử dụng giá trị trống if(Value = Blank(), ... thay vì IsBlank. Hàm IsBlank xem bảng trống là không trống và nên IsEmpty được dùng để kiểm tra bảng.

Khi bật xử lý lỗi cho các ứng dụng hiện có, IsBlank hãy cân nhắc việc thay thế bằng IsBlankOrError để duy trì hành vi ứng dụng hiện có. Trước khi bổ sung tính năng xử lý lỗi, một giá trị trống đã được sử dụng để đại diện cho cả giá trị null từ cơ sở dữ liệu và giá trị lỗi. Xử lý lỗi phân tách hai cách giải thích trống này, có thể thay đổi hành vi của các ứng dụng hiện có tiếp tục sử dụng IsBlank.

Giá trị trả về là IsBlank boolean true hoặc false.

Coalesce

Hàm Coalesce đánh giá các đối số theo thứ tự và trả về giá trị đầu tiên không trống hoặc chuỗi trống. Sử dụng hàm này để thay thế giá trị blank hoặc chuỗi trống bằng một giá trị khác, không thay đổi các giá trị chuỗi không trống hoặc không phải blank. Nếu tất cả các đối số là chuỗi trống hoặc trống, thì hàm trả về giá trị trống,Coalesce làm cho một cách hay để chuyển đổi chuỗi trống thành giá trị trống.

Coalesce( value1, value2 ) là dạng tương đương ngắn gọn hơn của If( Not IsBlank( value1 ), value1, Not IsBlank( value2 ), value2 ) và không yêu cầu giá trị1giá trị2 phải được đánh giá hai lần. Hàm If trảvề giá trị trống nếu không có công thức "else" như trường hợp ở đây.

Tất cả các đối Coalesce số phải cùng loại; ví dụ: bạn không thể kết hợp số với chuỗi văn bản. Giá trị trả về từ Coalesce thuộc loại phổ biến này.

IsEmpty

Hàm này IsEmpty kiểm tra xem bảng có chứa bất kỳ bản ghi nào không. Hàm này tương đương với việc sử dụng hàm CountRows và kiểm tra trường hợp bảng không chứa bản ghi nào. Bạn có thể kiểm tra lỗi nguồn dữ liệu bằng cách kết hợp IsEmpty với hàm Errors.

Giá trị trả về cho IsEmpty là Boolean đúng hoặc sai.

Cú pháp

Blank()

Coalesce( Value1 [, Value2, ... ] )

  • Giá trị – Bắt buộc. Giá trị cần kiểm tra. Mỗi giá trị được đánh giá theo thứ tự cho đến khi một giá trị không trống không tìm thấy chuỗi trống. Các giá trị sau điểm này không được đánh giá.

IsBlank( Giá trị )

  • Giá trị – Bắt buộc. Giá trị để kiểm tra giá trị blank hoặc chuỗi trống.

IsEmpty( Bảng )

  • Bảng - Bắt buộc. Bảng để kiểm tra bản ghi.

Ví dụ

Blank

  1. Tạo ứng dụng từ đầu và thêm công cụ điều khiển Button (Nút).

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

    ClearCollect( Cities, { Name: "Seattle", Weather: "Rainy" } )
    
  3. Xem trước ứng dụng, bấm hoặc nhấn vào nút mà bạn đã thêm rồi đóng Bản xem trước.

  4. Trên menu File (Tệp), bấm hoặc nhấn vào Collections (Bộ sưu tập).

    Bộ sưu tập Cities (Thành phố) xuất hiện, hiển thị một bản ghi có "Seattle" và "Rainy":

    Bộ sưu tập cho thấy thời tiết Rainy (Mưa) tại Seattle.

  5. Nhấp hoặc nhấn vào mũi tên quay lại để trở về không gian làm việc mặc định.

  6. Chèn công cụ điều khiển Label và đặt thuộc tính Văn bản thành công thức sau:

    IsBlank( First( Cities ).Weather )
    

    Nhãn có giá trị false vì trường Weather chứa giá trị ("Rainy").

  7. Thêm nút thứ hai rồi đặt thuộc tính OnSelect của nút này thành công thức sau:

    Patch( Cities, First( Cities ), { Weather: Blank() } )
    
  8. Xem trước ứng dụng, bấm hoặc nhấn vào nút mà bạn đã thêm rồi đóng Bản xem trước.

    Trường Weather của bản ghi đầu tiên trong Cities được thay thế bằng giá trị blank, loại bỏ giá trị "Rainy" trước đó.

    Bộ sưu tập cho thấy Seattle với trường Thời tiết trống.

    Nhãn có giá trị true vì trường Weather không chứa giá trị nào nữa.

Coalesce

Công thức Mô tả Kết quả
Coalesce( Blank(), 1 ) Kiểm tra giá trị trả về từ hàm Blank , hàm này luôn trả về một giá trị trống. Bởi vì đối số đầu tiên là blank, nên hàm tiếp tục đánh giá đối số tiếp theo cho đến khi tìm được giá trị không phải blank và chuỗi không trống. 1
Coalesce( "", "2" ) Kiểm tra đối số đầu tiên, là một chuỗi trống. Bởi vì đối số đầu tiên là chuỗi trống, nên hàm tiếp tục đánh giá đối số tiếp theo cho đến khi tìm được giá trị không phải blank và chuỗi không trống. 2
Coalesce( Blank(), "", Blank(), "", "3", "4" ) Coalescebắt đầu ở đầu danh sách đối số và lần lượt đánh giá từng đối số cho đến khi tìm thấy một giá trị không trống và chuỗi không trống. Trong trường hợp này, 4 đối số đầu tiên đều trả về giá trị blank hoặc một chuỗi trống, nên hàm tiếp tục đánh giá đối số thứ 5. Đối số thứ 5 là không phải là giá trị blank và là chuỗi không trống, vì vậy hàm dừng đánh giá tại đây. Hàm trả về giá trị của đối số thứ 5 và không đánh giá đối số thứ 6. 3
Coalesce( "" ) Kiểm tra đối số đầu tiên, là một chuỗi trống. Vì đối số đầu tiên là một chuỗi trống và không còn đối số nào nữa, nên hàm trả về blank. trống

IsBlank

  1. Tạo ứng dụng từ đầu, thêm công cụ điều khiển nhập văn bản và đặt tên là FirstName.

  2. Thêm nhãn rồi đặt thuộc tính Văn bản theo công thức sau:

    If( IsBlank( FirstName.Text ), "First Name is a required field." )
    

    Theo mặc định, thuộc tính Văn bản của công cụ điều khiển nhập văn bản được đặt thành "Text input". Bởi vì thuộc tính chứa một giá trị, nên thuộc tính này không trống và nhãn không hiển thị bất kỳ thông báo nào.

  3. Xóa tất cả các ký tự khỏi công cụ điều khiển nhập văn bản, bao gồm mọi khoảng trắng.

    Vì thuộc tính Văn bản không còn chứa bất kỳ ký tự nào, đó là một chuỗi trống và IsBlank( FirstName.Text ) làđúng. Thông báo về trường bắt buộc hiển thị.

Để biết thông tin về cách xác nhận bằng các công cụ khác, hãy xem hàm Validate và cách thao tác với các nguồn dữ liệu.

Ví dụ khác:

Công thức Mô tả Kết quả
IsBlank( Blank() ) Kiểm tra giá trị trả về từ hàm Blank , hàm này luôn trả về một giá trị trống. ĐÚNG VẬY
IsBlank( "" ) Một chuỗi không chứa ký tự. ĐÚNG VẬY
IsBlank( "Xin chào" ) Một chuỗi chứa 1 hoặc nhiều ký tự. SAI
IsBlank( AnyCollection ) bộ sưu tập tồn tại, nên bộ sưu tập này không rỗng, ngay cả khi không chứa bất kỳ bản ghi nào. Để kiểm tra bộ sưu tập trống, hãy sử dụng thay IsEmpty vào đó. SAI
IsBlank( Mid( "Hello", 17, 2 ) ) Ký tự đầu tiên của hàm Mid nằm ngoài phần cuối của chuỗi. Hàm sẽ trả về chuỗi trống. ĐÚNG VẬY
IsBlank( If( false, false ) ) Hàm If không có ElseResult. Vì điều kiện luôn là false, nên hàm If luôn trả về blank. ĐÚNG VẬY

IsEmpty

  1. Tạo ứng dụng từ đầu và thêm công cụ điều khiển Button (Nút).

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

    Collect( IceCream, {Flavor: "Strawberry", Số lượng: 300}, {Flavor: "Chocolate", Số lượng: 100} )

  3. Xem trước ứng dụng, bấm hoặc nhấn vào nút mà bạn đã thêm rồi đóng Bản xem trước.

    Một bộ sưu tập có tên IceCream được tạo và chứa dữ liệu sau:

    Một bảng có vị Dâu và Socola với số lượng là 300 và 100.

    Bộ sưu tập này không trống do có 2 bản ghi. IsEmpty( IceCream ) trảvề falseCountRows( IceCream ) trả về 2.

  4. Thêm nút thứ hai rồi đặt thuộc tính OnSelect của nút này thành công thức sau:

    Trong suốt (Kem)

  5. Xem trước ứng dụng, bấm hoặc nhấn vào nút thứ hai mà bạn đã thêm rồi đóng Bản xem trước.

    Lúc này, bộ sưu tập sẽ trống:

    Một bộ sưu tập với Hương vị và Số lượng là bộ sưu tập trống.

    Hàm Clear xóa tất cả các bản ghi khỏi bộ sưu tập, dẫn đến một bộ sưu tập trống. IsEmpty( IceCream ) trảvề trueCountRows( IceCream ) trả về 0.

Bạn cũng có thể dùng để IsEmpty kiểm tra xem bảng tính toán có trống hay không, như các ví dụ sau đây:

Công thức Mô tả Kết quả
IsEmpty( [ 1, 2, 3 ] ) Bảng một cột không trống do chứa 3 bản ghi. SAI
IsEmpty( [ ] ) Bảng một cột trống do không chứa bản ghi nào. ĐÚNG VẬY
IsEmpty( Filter( [ 1, 2, 3 ], Giá trị > 5 ) ) Bảng một cột không chứa giá trị nào lớn hơn 5. Hàm lọc trả về kết quả trống do không chứa bản ghi nào. ĐÚNG VẬY