Power Apps中如何通过查找列驱动的下拉框筛选库
解决Power Apps中Mfg查找列筛选失效的问题
直接说核心问题:你库的筛选公式里,Mfg相关的那一行写错了——把要筛选的字段写成了Group.Value,完全和Mfg列没关系,这就是筛选失效的根源。
下面一步步改,全是大白话:
第一步:修正下拉框的数据源(可选,但更规范)
你现在下拉框用的代码是:
Choices('Combined Inventory List'.'Mfg:Title')
可以改成更标准的写法:
Choices('Combined Inventory List'.Mfg)
改完之后,去下拉框的属性面板找「显示字段」,选Title——这样下拉框显示的还是厂商名称,但后台会关联完整的查找记录,筛选更稳定。
第二步:修正库的筛选公式里的Mfg行
你原来的Mfg筛选行是:
IsBlank(Mfg_Dropdown_1.SelectedText.Value) || IsEmpty(Mfg_Dropdown_1.SelectedText.Value) || Group.Value = Mfg_Dropdown_1.SelectedText.Value
这里有两个错误:
- 把要筛选的字段写成了
Group.Value,应该改成Mfg.Title(因为Mfg是查找列,你要匹配的是关联列表里的Title值) SelectedText.Value是旧属性,换成Selected.Title更靠谱
修正后的Mfg筛选行变成:
IsBlank(Mfg_Dropdown_1.Selected.Title) || IsEmpty(Mfg_Dropdown_1.Selected.Title) || Mfg.Title = Mfg_Dropdown_1.Selected.Title
如果不想改下拉框的数据源,还是用原来的Choices('Combined Inventory List'.'Mfg:Title'),那筛选行改成:
IsBlank(Mfg_Dropdown_1.Selected.Value) || IsEmpty(Mfg_Dropdown_1.Selected.Value) || Mfg.Title = Mfg_Dropdown_1.Selected.Value
最终完整的筛选公式
把修正后的Mfg行替换进去,完整公式如下:
Filter( 'Combined Inventory List', IsBlank(ItemTypeDropDownBox.Selected.Value) || IsEmpty(ItemTypeDropDownBox.Selected.Value) || ItemType.Value = ItemTypeDropDownBox.Selected.Value, IsBlank(BrandDropDownBox.Selected.Value) || IsEmpty(BrandDropDownBox.Selected.Value) || Brand.Value = BrandDropDownBox.Selected.Value, IsBlank('Style#DropDownBox'.Selected.Value) || IsEmpty('Style#DropDownBox'.Selected.Value) || 'Item#'.Value = 'Style#DropDownBox'.Selected.Value, IsBlank(ColorDropDownBox.Selected.Value) || IsEmpty(ColorDropDownBox.Selected.Value) || Color.Value = ColorDropDownBox.Selected.Value, IsBlank(SizeDropDownBox.Selected.Value) || IsEmpty(SizeDropDownBox.Selected.Value) || Size.Value = SizeDropDownBox.Selected.Value, IsBlank(Garment_Build_Dropdown.Selected.Value) || IsEmpty(Garment_Build_Dropdown.Selected.Value) || GarmentBuild.Value = Garment_Build_Dropdown.Selected.Value, IsBlank(Group_Dropdown.Selected.Value) || IsEmpty(Group_Dropdown.Selected.Value) || Group.Value = Group_Dropdown.Selected.Value, IsBlank(Mfg_Dropdown_1.Selected.Title) || IsEmpty(Mfg_Dropdown_1.Selected.Title) || Mfg.Title = Mfg_Dropdown_1.Selected.Title )
这样改完,Mfg列的筛选应该就能正常工作了。
内容的提问来源于stack exchange,提问作者EmilyM
相关产品推荐
相关产品推荐

