EPR类企业管理系统

在我们现有系统基础上或全新开发,提供定制服务
为您的企业高效快速实施ERP,WMS,MES,CRM管理系统
全面管控物料仓库、销售业务、采购业务、仓库业务
生产过程、质量检验、组织架构、业务报表


定制
QQ:460-3528

开发
QQ群:3360-90194

源码
微信:136-3650-3721

如何:过滤报表参数的查找

当您的报表具有持久类型的报表参数时,可以使用查找编辑器指定参数值。但是,如果查找中有大量对象,则滚动和选择所需的参数值可能会很不方便。本示例说明如何过滤参数的查找以减少可用值的数量。

FilterReportParameterLookup

注意
  • 此示例适用于WinForms和ASP.NET应用程序。但是,在WinForms应用程序中,查找编辑器已经具有内置的过滤支持。因此,此处演示的自定义仅在ASP.NET应用程序中有意义。移动应用程序不支持报告预览机制,因此本主题中描述的方法无法在移动平台中实现。
  • 在本主题中,假定您有一个使用Reports V2 Module的XAF应用程序,并且已经创建了一个或多个报告(请参阅Reports V2 Module Overview)。

提示

DevExpress代码示例数据库(http://www.devexpress.com/example=T319024)中提供了完整的示例项目。

使用其他数据源过滤查找参数

从工具箱中向报表添加一个额外的CollectionDataSource数据源。在“属性”窗口中,将DataSourceBase.ObjectTypeName属性设置为要过滤的参数的类型。使用CollectionSourceBase.Criteria属性指定所需的过滤器。

FilterReportParameterLookup1

确定在参数类型中使用的键类型(在上一步中传递给ObjectTypeName)。创建相同键类型的参数(例如Guidint)。启用“支持标准值的收集”。指定在上一步中创建的DataSource。将DisplayMember设置为存储参数的人类可读标识符的属性的名称(例如Name)。将ValueMember设置为参数的键属性的名称(例如Oid)。

FilterReportParameterLookup2

结果,将根据指定的条件过滤参数的查找。

使用级联参数

上一节介绍了如何在设计时指定静态过滤器。但是,过滤表达式可以包含其他参数值,因此可以在预览报表时使用“级联参数”在运行时更改过滤器。请注意,在这种情况下,过滤是在客户端执行的。

添加字符串类型的Filter参数。将包含对Filter参数的引用的条件传递到要过滤的参数的FilterString属性(例如,“ Contains([Name] ,? filter)”)。

FilterReportParameterLookup3

结果,参数的查找将带有“过滤器”输入字段。查找将根据指定的“过滤器”文本进行过滤。

转载保留此链接,注明出处