温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何分析ActiveReports中交互式报表的文档目录

发布时间:2022-01-11 16:00:03 来源:亿速云 阅读:139 作者:柒染 栏目:编程语言

如何分析ActiveReports中交互式报表的文档目录,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

通过文档目录,用户可以非常清晰的查看报表数据结构,并能方便地跳转到指定的章节,最终还可以将报表导出为PDF等格式的文件。下面以2012年各月产品销售分类汇总报表为例,演示如何在 ActiveReports 报表控件实现文档目录。

1、创建报表文件

在应用程序中创建一个名为 rptMonthlySalesByCategory.cs 的 ActiveReports 报表文件,ActiveReports 区域报表(基于代码)。

2、创建报表数据源

点击该图标以创建报表数据源,我们使用的数据源是源代码工程中 Data 目录下的 NWind_CHS.mdb,在打开的报表数据源对话框中,选择”提供程序”选项卡,点击建立连接按钮以打开“数据链接属性”对话框,并选择 “Microsoft Jet 4.0 OLE DB Provider”数据提供器,点击“下一步”按钮切换到 “连接”选项卡,点击“…”按钮定位到 NWind_CHS.mdb 文件,然后点击“确定”按钮以完成创建据源的操作。

回到“OLE DB”选项卡之后在查询区域输入一下 SQL 语句:

SELECT

DATEPART("yyyy",订单.订购日期)

AS

订购年, DATEPART("m",订单.订购日期)

AS

订购月, 类别.类别名称, 类别.说明, 产品.产品名称, 订单明细.数量, 订单明细.单价, 订单明细.折扣

FROM

(( 订单 

INNERJOIN

订单明细 

ON

订单.订单ID = 订单明细.订单ID) 

INNERJOIN

产品 

ON

订单明细.产品ID = 产品.产品ID) 

INNERJOIN

类别 

ON

产品.类别ID = 类别.类别ID 

WHERE

DATEDIFF("yyyy",订单.订购日期,'2012-01-01') = 0

ORDERBY

DATEPART("yyyy",订单.订购日期), DATEPART("m",订单.订购日期), 类别.类别ID, 订单明细.产品ID

3、设计报表界面

3.1、在报表设计界面中点击鼠标右键,并选择插入->组头/组尾,此报表中需要插入三级分组,然后设置以下属性:

groupHeader1DataField=订购月
GroupKeepTogether=FirstDetail 
RepeatStyle=OnPage
groupHeader2DataField=类别名称
GroupKeepTogether=FirstDetail 
RepeatStyle=OnPage
groupHeader3DataField=产品名称
GroupKeepTogether=FirstDetail 
RepeatStyle=OnPage

3.2、在报表后台代码中添加以下代码,用于设置报表目录:

privatevoid groupHeader1_Format(object sender, EventArgs e) {this.groupHeader1.AddBookmark(txt订购月1.Text); }

privatevoid groupHeader2_Format(object sender, EventArgs e){ this.groupHeader2.AddBookmark(txt订购月1.Text + "\\" + txt类别1.Text);}

看完上述内容,你们掌握如何分析ActiveReports中交互式报表的文档目录的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI