0

我正在设计一个基于 SharePoint Online 列表的资产管理 PowerApp。它采用项目类型(例如笔记本电脑、服务器或打印机等)等字段,并允许用户当前根据扫描的条形码进行过滤。但是,我现在创建了一个菜单屏幕,用户可以选择是要搜索笔记本电脑还是服务器。这会根据他们的选择将他们导航到不同的屏幕。我想根据AssetType字段中的值过滤数据源。这是一个多选字段,可以是笔记本电脑、服务器或打印机

BrowseGallery 的当前公式是 SortByColumns(Filter(EquipmentInventory, StartsWith(Barcode, BarcodeScanner1.Value)), "Title", If(SortDescending1, Descending, Ascending))

我努力了SortByColumns(Filter(EquipmentInventory.ItemType == "Laptop", StartsWith(Barcode, BarcodeScanner1.Value)), "Title", If(SortDescending1, Descending, Ascending))

并且

SortByColumns(Search([@AssetType], BrowseScreen_SearchInput.Text in AssetType && AssetType.Value = "Laptops", "AssetType", If(SortDescending1, Descending, Ascending))

尝试过滤数据源以仅显示笔记本电脑,但我收到无效参数的错误。

一旦我可以让它工作,预期的结果将是在每个屏幕上都有一个过滤器,在笔记本电脑屏幕上显示笔记本电脑等。

我希望每个屏幕都显示其资产的 BrowseGallery,然后允许用户仍然基于条形码进行搜索。

非常感谢任何帮助!

4

1 回答 1

0

对于过滤器公式尝试类似:Filter(EquipmentInventory, ItemType = 'Name of screen 1 item type selector'.Selected.ItemType.Value)

您看到的错误是因为公式试图比较两个不同类型的项目。为了测试这一点,我通常喜欢在我的屏幕上添加一个标签并测试比较的每个部分,以确保这些值是我所期望的。例如,将标签文本设置为 ItemType 和 'Name of screen 1 item type selector'.Selected.ItemType.Value 部分,并确保它们显示相同的值。

一旦过滤器工作,SortByColumns 部分也应该工作!

于 2019-09-11T18:01:23.137 回答