委派概述

已完成

在 Power Apps 中选择数据源之前,请务必了解委派。 通过使用委派,Power Apps 能够优化其与数据源的交互,从而最大限度减少传输的数据量。 简而言之,Power Apps 使用委派将数据处理卸载到数据源(如果可用)。 (处理包括筛选、搜索和排序。)可委派处理依赖于所使用的数据源和函数。 如果您有大量数据,并且需要依赖后端数据源来执行筛选等操作,那么可能需要将数据移动或复制到可以正常使用委派的环境中,例如 Microsoft Dataverse。 要从其他源复制数据,可以使用数据集成器将数据移动到 Dataverse。

委派的实际应用

有一个示例可以帮助您了解委派。 您有 5,000 个项目存储在 SharePoint 中。 项目状态 列存储值 ActiveInactive。 有一半的记录(2,500 条)已设置为这两个值之一。 您可以在库中显示列表,并使用本公式对其进行筛选。

Filter(SharePointList, ProjectStatus = "Active")

由于 Filter 函数可委派到 SharePoint 数据源,因此 Power Apps 会将公式发送到 SharePoint。 SharePoint 将处理全部 5,000 条记录,并向 Power Apps 返回 项目状态 已设置为 Active 的 2,500 条记录。 这些记录会在您的库中提供。 在本方案中,Power Apps 没有处理任何数据,并且只有匹配的记录从 SharePoint 没有处理任何数据,并且只有匹配的记录从 Power Apps,效率非常高。

当委派不可用时

某些函数无法委派到一些数据源。 不可委派操作的一个示例是针对 SharePoint 数据源使用 Search 函数。 Search 函数类似于 Filter,但使用 Search 可以检查多个字段并查找部分匹配项。 例如,Search(SharePointList, "Rob", "FirstName","LastName") 会返回 名字姓氏 列中包含字符串“rob”的所有记录 在本示例中,Power Apps 会返回 Robert Smith、Rob Jones 和 Suzy Robinson 的记录。

由于 Search 函数不可委派到 SharePoint 数据源,因此 Power Apps 需要在本地处理记录,这意味着首先会将记录从 SharePoint 发送到 Power Apps。 默认情况下,数据源将仅返回前 500 条记录。 这不是与您的公式相匹配的前 500 条记录,而是数据源中的前 500 条记录。 在本示例中,当您将本公式添加到库时,SharePoint 会将列表中的前 500 条记录返回到 Power Apps,然后 Power Apps 会在本地执行搜索操作。 如果您的列表包含 5,000 项,则不会处理或显示数据源中的其他 4,500 条记录。 可以在 Power Apps Studio 的高级设置中将 500 条记录的默认设置增加到最多 2,000 条记录。 在这些情况下,仍然不会处理或显示 3,000 条记录。

在选择数据源时考虑委派

专门在整个模块中介绍委派是因为在选择数据源时,委派是关键的考虑事项。 考虑所需的函数类型(例如 Search),并考虑在为应用程序选择最佳数据源时将拥有的数据量。

下一单元将介绍关于委派如何处理各种数据源的详细信息。