ActiveReports如何实现交互报表的动态排序功能

作者:控件中国网   出处:控件中国网   2015-08-26 09:53:48   阅读:2

ActiveReports 中除了提供对数据源进行排序的功能之外,还提供了最终用户排序功能,最终用户可以对报表进行区域内排序和整个数据源排序,结合数据钻取、过滤等功能可以让用户更方便地分析报表数据。
第一步:创建报表文件
在应用程序中创建一个名为 rptProductListForSort.rdlx 的 ActiveReports 报表文件,使用的项目模板为 ActiveReports 页面报表,创建完成之后从 VS 的报表菜单项中选择转换为Rdl报表布局报表,将页面报表转换为Rdl报表。
第二步:打开报表资源管理器,并按照以下信息创建报表数据源

名称: NWind_CHS
类型:  Micorsoft OleDb Provider
OLE DB 提供程序:  Microsoft.Jet.OLEDB.4.0
服务器或文件名称:  Data\NWind_CHS.mdb

第三步:添加数据集
在新建的 NWind_CHS 数据源上鼠标右键并选择添加数据集菜单项
常规-名称:Products
查询-查询:
SELECT 产品.*, 类别.类别名称,类别.说明
FROM 产品 INNER JOIN 类别 ON 产品.类别ID = 类别.类别ID
ORDER BY  类别.类别ID;
第四步:设计报表界面
从 Visual Studio 工具箱中将 Table 控件添加到报表设计界面,并将 Products 数据集中的字段拖拽到 Table 的相应列中,得到的设计界面如下:

image161_625.png
第五步:为列头单元格添加动态排序功能
选择列头单元格,在属性对话框中的命令区域点击属性对话框,以打开文本框属性设置对话框,并在交互式排序页面中分别设置以下属性:

产品名称列: 为文本框添加交互式排序功能:True
排序表达式:=[产品名称]
数据区域或分组排序:选择数据区域或者分组,Table1_Group1
在此范围内的评估排序表达式:当前范围
单位数量列: 为文本框添加交互式排序功能:True
排序表达式:=[单位数量]
数据区域或分组排序:选择数据区域或者分组,Table1_Group1
在此范围内的评估排序表达式:当前范围
单价列: 为文本框添加交互式排序功能:True
排序表达式:=[单价]
数据区域或分组排序:选择数据区域或者分组,Table1_Group1
在此范围内的评估排序表达式:当前范围
库存量列: 为文本框添加交互式排序功能:True
排序表达式:=[库存量]
数据区域或分组排序:选择数据区域或者分组,Table1_Group1
在此范围内的评估排序表达式:当前范围
订购量列: 为文本框添加交互式排序功能:True
排序表达式:=[订购量]
数据区域或分组排序:选择数据区域或者分组,Table1_Group1
在此范围内的评估排序表达式:当前范围
再订购量列: 为文本框添加交互式排序功能:True
排序表达式:=[再订购量]
数据区域或分组排序:选择数据区域或者分组,Table1_Group1
在此范围内的评估排序表达式:当前范围


第六步:运行程序
通过 F5 键运行程序,在每列列头的右侧有一个排序图表,点击排序图表可以实现对数据的排序操作:
image161_626.png

Copyright© 2006-2015 ComponentCN.com all rights reserved.重庆磐岩科技有限公司(控件中国网) 版权所有 渝ICP备12000264号 法律顾问:元炳律师事务所
客服软件
live chat