Lưu ý
Cần có ủy quyền mới truy nhập được vào trang này. Bạn có thể thử đăng nhập hoặc thay đổi thư mục.
Cần có ủy quyền mới truy nhập được vào trang này. Bạn có thể thử thay đổi thư mục.
Trong Power Apps, hầu hết các ứng dụng canvas đều sử dụng thông tin bên ngoài được lưu trữ trong các dịch vụ đám mây được gọi là Nguồn dữ liệu. Một ví dụ phổ biến là bảng trong tệp Excel được lưu trữ trong OneDrive. Ứng dụng truy cập các nguồn dữ liệu này bằng cách sử dụng Kết nối.
Bài viết này thảo luận các loại nguồn dữ liệu khác nhau và cách làm việc với nguồn dữ liệu bảng.
Thật dễ dàng để tạo một ứng dụng thực hiện thao tác đọc và viết cơ bản cho một nguồn dữ liệu. Tuy nhiên, đôi khi bạn muốn thêm quyền kiểm soát cách dữ liệu ra và vào ứng dụng của bạn. Bài viết này mô tả cách các hàm Patch, DataSourceInfo, Validate và Errors cung cấp nhiều khả năng kiểm soát hơn.
Các loại nguồn dữ liệu
Nguồn dữ liệu có thể được kết nối với một dịch vụ đám mây hoặc chúng có thể kết nối cục bộ với một ứng dụng.
Các nguồn dữ liệu được kết nối
Nguồn dữ liệu phổ biến nhất là bảng, bạn có thể sử dụng bảng này để truy xuất và lưu trữ thông tin. Bạn có thể sử dụng kết nối với các nguồn dữ liệu để đọc và ghi dữ liệu trong Microsoft Excel sổ làm việc, danh sách được tạo bằng Microsoft Lists, SharePoint thư viện, bảng SQL và nhiều định dạng khác có thể được lưu trữ trong các dịch vụ đám mây như OneDrive, DropBox và SQL Server.
Nguồn dữ liệu ngoài bảng bao gồm email, lịch, Twitter và thông báo, nhưng bài viết này không thảo luận các loại nguồn dữ liệu khác này.
Nguồn dữ liệu cục bộ
Với các điều khiển Thư viện, Hiển thị biểu mẫu và Chỉnh sửa biểu mẫu , bạn có thể tạo ứng dụng đọc và ghi dữ liệu từ nguồn dữ liệu. Để bắt đầu, hãy xem Hiểu về biểu mẫu dữ liệu.
Khi bạn yêu cầu Power Apps tạo ứng dụng từ dữ liệu, các kiểm soát này sẽ được sử dụng. Cơ chế ẩn đằng sau là ứng dụng sử dụng bảng nội bộ để lưu trữ và xử lý dữ liệu bắt nguồn từ nguồn dữ liệu.
Một loại nguồn dữ liệu đặc biệt là Bộ sưu tập, là dữ liệu cục bộ của ứng dụng và không được hỗ trợ bởi kết nối đến dịch vụ trên đám mây. Do đó, thông tin không thể được chia sẻ trên nhiều thiết bị cho cùng một người dùng hoặc giữa những người dùng. Có thể tải và lưu bộ sưu tập cục bộ.
Các loại bảng
Các bảng bên trong ứng dụng là các giá trị cố định, giống như một số hoặc một chuỗi là một giá trị. Các bảng nội bộ không được lưu trữ ở bất kỳ đâu mà tồn tại trong bộ nhớ của ứng dụng. Bạn không thể trực tiếp sửa đổi cấu trúc và dữ liệu của một bảng. Những gì bạn có thể làm là tạo một bảng mới thông qua một công thức: bạn sử dụng công thức đó để tạo bản sao đã sửa đổi cho bảng gốc.
Các bảng bên ngoài được lưu trữ trong một nguồn dữ liệu để truy xuất và chia sẻ sau đó. Power Apps cung cấp "kết nối" để đọc và ghi dữ liệu đã lưu trữ. Trong một kết nối, bạn có thể truy cập nhiều bảng thông tin. Bạn có thể chọn bảng nào để sử dụng trong ứng dụng của mình và mỗi bảng sẽ trở thành một nguồn dữ liệu riêng biệt.
Để tìm hiểu thêm, hãy xem Làm việc với bảng về các bảng nội bộ cũng như các bảng bên ngoài nằm trong dịch vụ đám mây.
Làm việc với bảng
Bạn có thể dùng nguồn dữ liệu bảng theo cách tương tự như bạn sử dụng một bảng Power Apps nội bộ. Giống như một bảng nội bộ, mỗi nguồn dữ liệu đều có bản ghi, cột và các thuộc tính mà bạn có thể sử dụng trong công thức. Ngoài ra:
Nguồn dữ liệu có cùng loại dữ liệu và tên cột như bảng cơ sở trong kết nối.
Lưu ý
Đối với SharePoint và các nguồn dữ liệu Excel có chứa tên cột có khoảng trắng, Power Apps thay thế khoảng trắng bằng "_x0020_". Ví dụ: "Tên cột" trong SharePoint hoặc Excel sẽ xuất hiện dưới dạng "Tên_cột_x0020" trong Power Apps khi hiển thị trong bố cục dữ liệu hoặc được sử dụng trong công thức.
Nguồn dữ liệu được tải tự động từ dịch vụ khi ứng dụng được tải. Bạn có thể buộc làm mới dữ liệu bằng cách sử dụng chức năng Làm mới .
Khi người dùng chạy ứng dụng, họ có thể tạo, sửa đổi và xóa bản ghi cũng như đẩy những thay đổi đó quay lại bảng cơ sở trong dịch vụ.
Các hàm DataSourceInfo, Defaults và Validate cung cấp thông tin về nguồn dữ liệu mà bạn có thể sử dụng để tối ưu hóa trải nghiệm của người dùng.
Tạo nguồn dữ liệu
Không thể dùng Power Apps để tạo một nguồn dữ liệu được kết nối hoặc sửa đổi cấu trúc của nó; nguồn dữ liệu phải tồn tại trong dịch vụ ở nơi nào đó. Chẳng hạn, để tạo một bảng trong sổ làm việc Excel được lưu trữ trên OneDrive, trước tiên bạn phải sử dụng Excel Online trên OneDrive để tạo một sổ làm việc. Tiếp theo, bạn tạo một kết nối tới nó từ ứng dụng của mình.
Tuy nhiên, nguồn dữ liệu thu thập có thể được tạo và sửa đổi bên trong ứng dụng, nhưng chỉ mang tính tạm thời.
Hiển thị một hoặc nhiều bản ghi
Sơ đồ này hiển thị luồng thông tin khi ứng dụng đọc thông tin trong nguồn dữ liệu:
- Thông tin được lưu trữ và chia sẻ thông qua một dịch vụ lưu trữ (trong trường hợp này là Microsoft Lists hoặc SharePoint Online).
- Một kết nối sẽ cung cấp thông tin này cho ứng dụng. Kết nối sẽ phụ trách quá trình xác thực của người dùng để truy cập thông tin.
- Khi ứng dụng được khởi động hoặc nhấn chức năng Làm mới , thông tin sẽ được lấy từ kết nối vào nguồn dữ liệu trong ứng dụng để sử dụng cục bộ.
- Công thức được dùng để đọc thông tin và hiển thị nó trong các kiểm soát mà người dùng có thể nhìn thấy. Bạn có thể hiển thị các bản ghi của một nguồn dữ liệu bằng cách sử dụng thư viện trên màn hình và kết nối thuộc tính Items với nguồn dữ liệu: Gallery.Items = DataSource. Bạn kết nối các điều khiển trong thư viện với thư viện bằng cách sử dụng thuộc tính Mặc định của điều khiển.
- Nguồn dữ liệu cũng là một bảng. Vì vậy, bạn có thể sử dụng Lọc, Sắp xếp, Thêm cột và các hàm khác để tinh chỉnh và mở rộng nguồn dữ liệu trước khi sử dụng toàn bộ. Bạn cũng có thể sử dụng chức năng Tra cứu, Đầu tiên, Cuối cùng và các chức năng khác để làm việc với từng bản ghi.
Sửa đổi một bản ghi
Các mũi tên trong sơ đồ trước chỉ một chiều. Các thay đổi đối với nguồn dữ liệu không được đẩy lại thông qua cùng công thức mà dữ liệu được truy xuất. Thay vào đó, công thức mới sẽ được sử dụng. Thường một màn hình khác sẽ được dùng để chỉnh sửa một bản ghi hơn là duyệt bản ghi, đặc biệt trên thiết bị di động.
Để sửa đổi bản ghi hiện có của một nguồn dữ liệu, bản ghi đó phải đến từ nguồn dữ liệu đó. Bản ghi có thể hiển thị trong thư viện, biến ngữ cảnh và bất kỳ số lượng công thức nào, nhưng nguồn gốc của nó phải có thể truy ngược về nguồn dữ liệu. Thông tin bổ sung đi kèm với bản ghi có chức năng nhận dạng duy nhất, đảm bảo rằng bạn sửa đổi đúng bản ghi.
Sơ đồ này hiển thị luồng thông tin để cập nhật nguồn dữ liệu:
- Điều khiển Chỉnh sửa biểu mẫu cung cấp một vùng chứa cho các thẻ nhập, bao gồm các điều khiển nhập của người dùng như điều khiển nhập văn bản hoặc thanh trượt. Thuộc tính DataSource và Item được sử dụng để xác định bản ghi cần chỉnh sửa.
- Mỗi thẻ đầu vào có một thuộc tính Default , được đặt thành trường của bản ghi ThisItem của biểu mẫu. Các điều khiển trong thẻ đầu vào lấy giá trị đầu vào từ Mặc định. Thông thường, bạn không cần phải sửa đổi mặc định này.
- Mỗi thẻ đầu vào sẽ hiển thị một thuộc tính Cập nhật . Thuộc tính này ánh xạ thông tin nhập của người dùng sang một trường cụ thể của bản ghi để ghi lại vào nguồn dữ liệu. Thông thường, bạn không cần phải sửa đổi thuộc tính này.
- Một nút hoặc kiểm soát hình ảnh trên màn hình cho phép người dùng lưu thay đổi đối với bản ghi. Công thức OnSelect của điều khiển gọi hàm SubmitForm để thực hiện công việc này. SubmitForm đọc tất cả các thuộc tính Cập nhật của các thẻ và ghi lại vào nguồn dữ liệu.
- Đôi khi vẫn có vấn đề. Kết nối mạng có thể bị ngắt hoặc dịch vụ thực hiện kiểm tra xác thực mà ứng dụng không biết. Thuộc tính Error và ErrorKind của điều khiển biểu mẫu giúp thông tin này có sẵn để bạn có thể hiển thị cho người dùng.
Để kiểm soát quy trình chặt chẽ hơn, bạn cũng có thể sử dụng chức năng Bản vá và Lỗi . Điều khiển Chỉnh sửa biểu mẫu sẽ hiển thị thuộc tính Cập nhật để bạn có thể đọc giá trị của các trường trong biểu mẫu. Bạn cũng có thể sử dụng thuộc tính này để gọi trình kết nối tùy chỉnh trên kết nối, bỏ qua hoàn toàn các hàm Patch và SubmitForm .
Xác thực
Trước khi thực hiện thay đổi đối với bản ghi, ứng dụng phải thực hiện mọi biện pháp có thể để đảm bảo thay đổi đó được chấp nhận. Có hai lý do để kiểm tra:
- Phản hồi ngay lập tức cho người dùng. Thời điểm tốt nhất để khắc phục sự cố là ngay khi sự cố xảy ra, khi người dùng vẫn còn nhớ đến nó. Theo nghĩa đen, với mỗi cú chạm hoặc nhấn phím, văn bản màu đỏ có thể xuất hiện để xác định vấn đề với mục nhập của chúng.
- Giảm lưu lượng mạng và độ trễ của người dùng. Phát hiện nhiều vấn đề trong ứng dụng có nghĩa là ít cuộc trò chuyện qua mạng hơn để phát hiện và giải quyết vấn đề. Mỗi cuộc hội thoại sẽ mất thời gian trong lúc người dùng phải chờ đợi trước khi họ có thể tiếp tục.
Power Apps cung cấp hai công cụ để xác thực:
- Nguồn dữ liệu có thể cung cấp thông tin về những gì là hợp lệ và không hợp lệ. Chẳng hạn, các số có thể có giá trị tối thiểu và tối đa, và một hoặc nhiều mục nhập có thể được yêu cầu. Bạn có thể truy cập thông tin này bằng hàm DataSourceInfo .
- Hàm Xác thực sử dụng thông tin này để kiểm tra giá trị của một cột hoặc toàn bộ bản ghi.
Xử lý lỗi
Bây giờ bạn đã xác thực hồ sơ của mình, hãy cập nhật hồ sơ đó bằng Bản vá.
Nhưng vẫn có thể có vấn đề. Mạng bị hỏng, xác thực dịch vụ không thành công hoặc người dùng không có đủ quyền, đó chỉ là một số lỗi có thể xảy ra với ứng dụng của bạn. Ứng dụng của bạn cần phản hồi phù hợp với các tình huống lỗi, cung cấp phản hồi cho người dùng và phương tiện để họ khắc phục.
Khi xảy ra lỗi với nguồn dữ liệu, ứng dụng của bạn sẽ tự động ghi lại thông tin lỗi và cung cấp thông qua chức năng Lỗi . Các lỗi liên quan đến những bản ghi có vấn đề. Nếu vấn đề nằm trong khả năng khắc phục của người dùng, chẳng hạn như sự cố xác thực, họ có thể gửi lại hồ sơ và lỗi sẽ được xóa.
Nếu xảy ra lỗi khi tạo bản ghi bằng Patch hoặc Collect, sẽ không có bản ghi nào liên kết với bất kỳ lỗi nào. Trong trường hợp này, blank được trả về bởi Patch và có thể được sử dụng làm đối số bản ghi cho Errors. Lỗi tạo sẽ được xóa cùng thao tác tiếp theo.
Hàm Errors trả về bảng thông tin lỗi. Thông tin này có thể bao gồm thông tin cột, nếu lỗi có thể được quy cho một cột cụ thể. Sử dụng thông báo lỗi cấp độ cột trong kiểm soát nhãn gần với nơi cột ở màn hình chỉnh sửa. Sử dụng thông báo lỗi ở cấp độ bản ghi khi Cột trong bảng lỗi trống, ở vị trí gần nút Lưu cho toàn bộ bản ghi.
Làm việc với nguồn dữ liệu lớn
Khi bạn tạo báo cáo từ các nguồn dữ liệu lớn (có thể là hàng triệu bản ghi), bạn muốn giảm thiểu lưu lượng mạng. Giả sử bạn muốn báo cáo về tất cả Khách hàng có Mã trạng thái là Bạch kim ở Thành phố New York. Bảng Khách hàng của bạn chứa hàng triệu bản ghi.
Bạn không muốn đưa hàng triệu khách hàng vào ứng dụng của mình rồi sau đó lại chọn những khách hàng bạn muốn. Sự lựa chọn phải diễn ra bên trong dịch vụ đám mây nơi bảng của bạn được lưu trữ, nơi bạn gửi các bản ghi đã chọn qua mạng.
Nhiều, nhưng không phải tất cả, các chức năng mà bạn có thể sử dụng để chọn bản ghi đều có thể được ủy quyền, nghĩa là chúng được chạy bên trong dịch vụ đám mây. Tìm hiểu thêm trong Ủy quyền.
Bộ sưu tập
Bộ sưu tập là một loại nguồn dữ liệu đặc biệt. Chúng nằm cục bộ trong ứng dụng và không được hỗ trợ bởi kết nối tới dịch vụ trên đám mây. Do đó, thông tin không thể được chia sẻ trên nhiều thiết bị cho cùng một người dùng hoặc giữa những người dùng.
Bộ sưu tập hoạt động giống như bất kỳ nguồn dữ liệu nào khác, với một vài ngoại lệ:
- Bộ sưu tập có thể được tạo động bằng hàm Collect . Không cần phải thiết lập chúng trước thời gian, như nguồn dữ liệu dựa trên kết nối thực hiện.
- Các cột của bộ sưu tập có thể được sửa đổi bất kỳ lúc nào bằng cách sử dụng hàm Thu thập .
- Bộ sưu tập cho phép các bản ghi trùng lặp. Hơn bản sao của cùng bản ghi có thể tồn tại trong một bộ sưu tập. Các hàm như Xóa hoạt động trên kết quả khớp đầu tiên mà chúng tìm thấy, trừ khi đối số Tất cả được cung cấp.
- Bạn có thể sử dụng các hàm SaveData và LoadData để lưu và tải lại bản sao của bộ sưu tập. Thông tin này được lưu trữ ở một vị trí riêng mà những người dùng, ứng dụng hoặc thiết bị khác không thể truy cập.
- Bạn có thể sử dụng các điều khiển Xuất và Nhập để lưu và tải lại bản sao của bộ sưu tập vào tệp mà người dùng có thể tương tác.
Để biết thêm thông tin về cách làm việc với bộ sưu tập dưới dạng nguồn dữ liệu, hãy xem tạo và cập nhật bộ sưu tập.
Bộ sưu tập thường được dùng để lưu giữ trạng thái toàn cầu cho ứng dụng. Xem làm việc với các biến để biết các tùy chọn có sẵn để quản lý trạng thái.