ActiveReports 报表应用教程 (12)---交互式报表之贯穿钻取
在ActiveReports中提供强大的数据分析能力,您可以通过图表、表格、图片、列表、波形图等控件来实现数据的贯穿钻取,在一级报表中可以通过鼠标点击来钻取更为详细的数据。
本文展示的是2012年度每天销售数据合计,通过销售日历报表可以贯穿钻取到当天的销售明细报表。
1、创建报表文件在应用程序中创建一个名为rptVacations.rdlx的ActiveReports报表文件,使用的项目模板为ActiveReports页面报表,创建完成之后从VS的报表菜单项中选择转换为连续页面布局(CPL)报表,将固定页面报表转换为连续页面报表。
2、打开报表资源管理器,并按照以下信息创建报表数据源名称:NorthWind_CHS类型:MicorsoftOleDbProviderOLEDB提供程序:Microsoft.Jet.OLEDB.4.0服务器或文件名称:Data\NWind_CHS.mdb3、添加数据集在新建的NorthWind_CHS数据源上鼠标右键并选择添加数据集菜单项
常规-名称:SalesByDay
查询-查询:
SELECT
订单.订购日期,
Sum
(订单明细.单价*订单明细.数量)
AS
营业额
FROM
订单明细
INNERJOIN
订单
ON
订单明细.订单ID=订单.订单ID
WHERE
DateDiff("yyyy",'2012-01-01',订单.订购日期)=0
GROUPBY
订单.订购日期;
4、设计报表界面从VisualStudio工具箱中将Calendar控件添加到报表设计界面,按照以下列表设置Calendar控件的属性:
数据数据集名称:SalesByDay起始日期:=Fields!订购日期.Value
截止日期:=Fields!订购日期.Value
值:=Fields!营业额.Value导航跳转到报表:Reports\rptOrderDetailsForSub.rdlx
跳转到报表-参数:
名称=Date
值==Fields!订购日期.Value5、创建贯穿报表的子报表
在应用程序中创建一个名为rptOrderDetailsForSub.rdlx的ActiveReports报表文件,使用的项目模板为ActiveReports页面报表,创建完成之后从VS的报表菜单项中选择转换为连续页面布局(CPL)报表,将固定页面报表转换为连续页面报表。并为报表创建以下参数:
名称:Date数据类型:DateTime提示用户输入值显示的文本;其实日期:隐藏:True6、在子报表中打开报表资源管理器,并按照以下信息创建报表数据源名称:NWind_CHS共享数据源:True引用:..\Data\NWind_CHS_Access.rdsx7、添加数据集在新建的NWind_CHS数据源上鼠标右键并选择添加数据集菜单项
常规-名称:OrderDetails
参数-名称:Param
参数-值:=[@Date]
查询-查询:
SELECT
订单.订单ID,订单.客户ID,订单.订购日期,产品.产品名称,订单明细.数量,订单明细.单价,订单明细.折扣
from
((订单
innerjoin
订单明细
on
订单.订单ID=订单明细.订单ID)
innerjoin
产品
on
订单明细.产品ID=产品.产品ID)
where
?=订购日期
ORDERBY
订单.订单ID;
8、运行程序点击2012年度销售数据报表中有数据的日期,然后可以贯穿钻取到当天的销售明细报表中:
在线演示及×××地址:
http://www.gcpowertools.com.cn/products/activereports_demo.htm
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。