第二节 使用筛选器Filter进行多个条件的搜索
Power Apps 的筛选功能允许您通过指定多个条件进行搜索。
在本文中,我们将解释如何使用 Filter 函数实现多个条件,并使用以各种方式搜索的示例应用程序。下面是一个示例应用程序。这是使用“日期选择”、“下拉菜单”、“文本输入”和“复选框”控件的多条件搜索。
目录
过滤器功能概述
过滤功能设置
设置选择日期控件
配置下拉控件
配置文本输入控件
配置“复选框”控件
设置按钮控制
概括
过滤器功能概述
Filter函数是在表中搜索符合指定条件的项目的函数。
您可以使用以下语法用逗号分隔来指定多个条件。
Filter( table , condition1 [, condition2 , … ])在table中,输入要搜索的表。在条件中,输入您要搜索的条件的公式。可以指定多个公式。
首先我们看一下我们的数据库内容。
我们看一下我们的Filter函数的内容。
Filter(Sampledata,OrderDate >=DatePicker1.SelectedDate, OrderDate <= DatePicker2.SelectedDate,IsBlank(Dropdown1.Selected.Value) || Diqu=Dropdown1.Selected.Value, StartsWith(MakerCompany,TextInput1.Text),InCharge = varName1||InCharge = varName2 || InCharge = varName3)
过滤功能设置
每个控件的名称如下。
Gallery 的 Items 属性包含下面的 Filter 功能。每行都是基于每个控件的值的搜索。
■日期范围
以下指定日期范围。查找范围从 DatePicker1 中的日期到 DatePicker2 中的日期的行。
Date >= DatePicker1.SelectedDate, Date <= DatePicker2.SelectedDate
<处理日期的注意事项>
在数据库列表端搜索时,时间会添加到日期中。因此,如果指定 2021/9/30,则将变为 2021/9/30 0:00。
因此,Date <= DatePicker2.SelectedDate 被视为 Date <= 2021/9/30 0:00。2021/9/30 0:01 至 2021/9/30 23:59 将被排除,且 2021/9/30 将无法正确搜索。
在实践中,您必须考虑诸如搜索指定值加一天之类的事情。
■下拉列表
下面是对下拉列表中所选项目的搜索。
包含 IsBlank 部分以在未选择任何内容时显示所有内容。
如果没有 IsBlank,则在未选择任何内容时将不会显示任何内容。这是因为没有类别为空白的行。
■文本搜索
以下搜索以文本输入中输入的字符串开头的项目。如果字符串以第二个参数中指定的字符开头,则 StartsWith 函数返回 true。
StartsWith(Title,TextInput1.Text) |
■复选框
以下是对复选框中选中的名称的搜索。
有三个复选框,所以我就写三个。
varName1 到 varName3 是选中时将包含目标名称的变量。有关详细信息,请参阅配置复选框控件。
‘In charge’=varName1||’In charge’=varName2||’In charge’=varName3 |
设置选择日期控件
“日期选择”控件在DefaultDate属性中设置日期。这是为了恢复到单击“清除”按钮时指定的日期。
本次样本数据为2021年4月1日至2021年10月30日,因此设置如下。
配置下拉控件
Dropdown 控件使用 Choices 函数来选择Items属性。
此示例数据的源数据是 SharePoint 列表。Category 列的格式设置为选项,因此我们使用 Choices 函数。(Choices 函数是检索选项的函数)
如果无法选择格式化,请使用集合或Distinct 函数。
配置文本输入控件
“文本输入”控件没有特殊设置。
配置“复选框”控件
“Checkbox”控件的OnCheck和OnUncheck属性中有以下内容。(复选框1的示例)
当选中时,Text的值(名称)被放置在变量varName1中,当不选中时,放置一个空白。
过滤器功能搜索如下。
‘In charge’=varName1||’In charge’=varName2||’In charge’=varName3 |
If( Checkbox1.Value=true, ‘InCharge’=Checkbox1,Text )
另外,由于我们希望在初始状态下显示所有负责人,因此将Default属性设置为 true。
设置按钮控制
“Button2”控件的OnSelect属性设置如下。使用重置功能返回每个控件的设置。
对于“复选框”控件,即使仅将复选框状态返回到初始状态,变量也不会改变,因此变量也会改变。
概括
本页提供了根据“日期选择”、“下拉菜单”、“文本输入”和“复选框”控件的设置使用过滤器功能进行多重搜索的示例。Power Apps 可以用低代码实现,但需要“编程的思维能力”。