如何添加筛选器(报表设计器)
更新日期: 2005 年 12 月 5 日
从数据源中检索数据之后,为了有效地限制用于计算的数据,您可以针对数据集、数据区域以及数据分组设置筛选器。若要设置筛选器,请打开报表项的属性对话框并选择**“筛选器”**选项卡。您可以创建简单的表达式,也可以使用编辑表达式(报表设计器)对话框创建复杂的表达式。每个表达式都可以通过 And 或 Or 运算符与下一行中的表达式组合使用。
具有**“筛选器”选项卡的所有属性页都会显示相同的选项。您可以设置“表达式”、“运算符”、“值”以及“和/或”的值。下表显示了您可以对“筛选器”**列表中的每列执行的操作。
列 | 操作 |
---|---|
表达式 |
在下拉列表中,选择有效的字段让此筛选器创建简单的表达式,还可以选择 <表达式> 以使用“编辑表达式”对话框创建复杂的表达式。 |
运算符 |
选择一个可用于此筛选表达式的有效运算符。 |
值 |
直接输入值,或者在下拉列表中,选择 <表达式> 以使用“编辑表达式”对话框创建复杂的表达式。如果“表达式”包含字段引用,则“值”的默认类型将与字段的默认类型匹配。如果“表达式”不是字段引用,则默认的类型为 System.String。请参阅以下有关比较字符串类型与其他数据类型的注意事项。 |
和/或 |
选择布尔运算符将此表达式与下一行中的表达式组合使用。开始在下一行输入表达式之后,此单元便会激活。 |
注意: |
---|
如果在“值”单元中键入字符“7”,则在默认情况下,计算结果将为字符串“7”。若要对数值表达式和数字 7 进行比较,则请使用以等号开头的表达式语法:=7。在预览报表时,您可能会看到如下所示由于数据类型不匹配而出现的运行时错误:“无法执行 [数据集名称] 的 FilterExpression 处理。无法比较类型 System.Int32 和 System.String 的数据。请检查由 FilterExpression 返回的数据类型”。 |
若要定义筛选器,请按照下列步骤打开相应的属性对话框,再选择**“筛选器”**选项卡。所有筛选器的定义方式都类似。
针对数据集定义筛选器
在“数据”视图中,从**“数据集”中选择要应用筛选器的数据集,再单击编辑 (...**) 按钮。
选择**“筛选器”**选项卡,然后执行下面“设置筛选器”中的步骤。
针对数据区域定义筛选器
在“布局”视图中,如果数据区域为表或矩阵,请单击该表或矩阵,以便在该表或矩阵的上方和旁边显示列控点和行控点。
右键单击表或矩阵的角控点或者列表或图表中的任意位置,再单击**“属性”**。
选择**“筛选器”**选项卡,然后执行下面“设置筛选器”中的步骤。
为表组或矩阵组添加筛选器
在“布局”视图中,单击表或矩阵,以便在表或矩阵的上方和旁边显示列控点和行控点。
右键单击表或矩阵的角控点,再单击**“属性”**。
在**“组”选项卡中,选择要编辑的组,再单击“编辑”**。
选择**“筛选器”**选项卡,然后执行下面“设置筛选器”中的步骤。
为列表组添加筛选器
在“布局”视图中,右键单击该列表,再单击**“属性”**。
在**“常规”选项卡中,单击“编辑详细信息组”**。
选择**“筛选器”**选项卡,然后执行下面“设置筛选器”中的步骤。
为图表组添加筛选器
在“布局”视图中,右键单击该图表,再单击**“属性”**。
在**“数据”选项卡上,选择类别组或序列组,再单击“编辑”**。
选择**“筛选器”**选项卡,然后执行下面“设置筛选器”中的步骤。
设置筛选器
对于**“筛选器”选项卡中的“筛选器”**,执行以下操作:
- 在**“表达式”**中,键入或选择希望筛选器计算的字段的表达式。
- 在**“运算符”**中,选择希望筛选器用来比较计算字段和值的运算符。
- 在**“值”中,键入筛选器对“表达式”**中的值进行计算时所依据的表达式或值。