委派概述

已完成

在 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。 默认情况下,SharePoint 仅发送前 500 条记录,不是与公式匹配的前 500 条记录,而是整个数据集中的前 500 条记录。

例如,如果在库中使用了这个公式,SharePoint 会向 Power Apps 发送列表中的前 500 条记录,之后,Power Apps 要在本地执行搜索。 假设列表中包含 5,000 个项目,其余 4,500 条记录都不会处理或显示。

您可以在 Power Apps Studio 的高级设置中将 500 条记录的默认限制调整到最多 2,000 条记录。 但是,即便增加了数量,5,000 个项目中的 3,000 条记录仍旧不会处理或显示。

在选择数据源时考虑委派

委派在选择数据源时至关重要,因此,我们为其设计了专属模块。 考虑要使用的特定函数(例如 Search)以及正在处理的数据量。 这些因素严重影响了您是否能为应用选择完美的数据源。

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