Các hàm FirstN, Index, Last và LastN

Áp dụng đối với: Ứng dụng canvas Dòng màn hình nền Ứng dụng Power Platform dựa trên mô hình CLI

Trả về bản ghi đầu tiên/cuối cùng/cụ thể hoặc một tập hợp các bản ghi đầu tiên/cuối cùng trong một bảng.

Description

Hàm First trả về bản ghi đầu tiên của bảng.

Hàm FirstN trả về tập hợp bản ghi đầu tiên của bảng; đối số thứ hai là số lượng bản ghi cần trả về.

Hàm Last trả về bản ghi cuối cùng của bảng.

Hàm LastN trả về tập hợp bản ghi cuối cùng của bảng; đối số thứ hai là số lượng bản ghi cần trả về.

Hàm Index trả về một bản ghi trong bảng dựa trên vị trí đã sắp xếp của bản ghi đó trong bảng. Bản ghi được đánh số từ 1 nên First( table )Index( table, 1 ) sẽ trả về cùng một bản ghi. Hàm Index trả về lỗi nếu chỉ mục của bản ghi yêu cầu nhỏ hơn 1, lớn hơn số lượng bản ghi trong bảng hoặc bảng trống.

Hàm First, IndexLast trả về một bản ghi. Hàm FirstNLastN trả về một bảng, ngay cả khi bạn chỉ định một bản ghi.

Đại diện

Khi được dùng với một nguồn dữ liệu, bạn không thể ủy nhiệm các chức năng này. 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. Kết quả có thể không thể hiện toàn bộ câu chuyện. Một cảnh báo có thể xuất hiện vào lúc biên soạn để nhắc bạn về hạn chế này và gợi ý chuyển sang dùng các hình thức ủy nhiệm thay thế khi có thể. Để biết thêm thông tin, xem bản tổng quan ủy nhiệm.

Ví dụ: khi được sử dụng với nguồn dữ liệu chứa một bảng lớn có 1 triệu bản ghi, hàm Last sẽ tuân theo giới hạn không ủy quyền và sẽ không trả về bản ghi cuối cùng trong toàn bộ nguồn dữ liệu. Tương tự như vậy, việc sử dụng hàm Index để yêu cầu một bản ghi ở giữa 1 triệu bản ghi sẽ gây ra lỗi vì chỉ mục nằm ngoài phạm vi dựa trên giới hạn không ủy quyền.

Cú pháp

First( Table )
Last( Table )

  • Table – Bắt buộc. Bảng cần xử lý.

FirstN( Table [, NumberOfRecords ] )
LastN( Table [, NumberOfRecords ] )

  • Table – Bắt buộc. Bảng cần xử lý.
  • NumberOfRecords – Không bắt buộc. Số lượng bản ghi cần trả về. Nếu bạn không chỉ định đối số này, hàm sẽ trả về một bản ghi.

Index( Table, RecordIndex )

  • Table – Bắt buộc. Bảng cần xử lý.
  • RecordIndex – Bắt buộc. Chỉ mục của bản ghi cần trả về. Bản ghi được đánh số từ 1.

Ví dụ

Đối với các ví dụ sau, chúng ta sẽ sử dụng nguồn dữ liệuIceCream (Kem) có chứa dữ liệu trong bảng sau:

Ví dụ về IceCream.

Bảng này có thể nằm trong một tập hợp có công thức này (đặt công thức OnStart cho thành phần điều khiển Button (Nút) và nhấn nút):

Collect( IceCream, Table( { Flavor: "Chocolate", Quantity: 100 },
                          { Flavor: "Vanilla", Quantity: 200 },
                          { Flavor: "Strawberry", Quantity: 300 },
                          { Flavor: "Mint Chocolate", Quantity: 60 },
                          { Flavor: "Pistachio", Quantity: 200 } ) )
Công thức Description Kết quả
First( IceCream ) Trả về bản ghi đầu tiên của IceCream. { Flavor: "Chocolate", Quantity: 100 }
Last( IceCream ) Trả về bản ghi cuối cùng của IceCream. { Flavor: "Pistachio", Quantity: 200 }
Index( IceCream, 3 ) Trả về bản ghi thứ ba của IceCream. { Flavor: "Strawberry", Quantity: 300 }
FirstN( IceCream, 2 ) Trả về một bảng chứa 2 bản ghi đầu tiên của IceCream. Bảng chứa các bản ghi cho Sô cô la và Vani
LastN( IceCream, 2 ) Trả về một bảng chứa 2 bản ghi cuối cùng của IceCream. Bảng chứa các hồ sơ cho Mint Chocolate và Pistachio
Index( IceCream, 4 ).Quantity Trả về bản ghi thứ tư trong bảng và trích xuất cột Quantity (Số lượng). 60
Index( IceCream, 10 ) Trả về lỗi vì bản ghi yêu cầu nằm ngoài phạm vi của bảng. Lỗi