ActiveReports 报表设计器设计不同报表:脚本
- 格式:pdf
- 大小:1012.51 KB
- 文档页数:18
ActiveReports报表设计器介绍之RDL 报表1.报表设计器介绍ActiveReports 提供了一个高度集成的设计器,并以可视化、代码、脚本或表达式的方式来编辑报表。
它包括一个属性窗口,可以在该窗口中设置每个元素的属性,此外,ActiveReports还提供了自己的工具箱和报表资源管理器视图。
设计器支持三种类型的报表:RDL报表、页面报表、区域报表。
以下介绍使用报表设计器设计三种类型报表的具体操作。
1.1RDL 报表Rdl报表给我们提供了最大限度的报表交互能力。
可以放大和缩小控件,设置交互式排序,设置钻取报表,还可以添加指向其它报表的钻取链接和指向报表内其它区域的书签链接。
下面详细介绍RDL报表。
目录:◆RDL报表布局◆RDL报表设计器◆RDL报表菜单◆RDL报表工具箱◆属性窗口◆报表资源管理器3.1.1RDL报表布局这种布局模式将报表定义为页面的形式,报表布局最终会被保存为Rdlx 格式。
3.1.2RDL报表设计器在RDL报表中,设计器提供了以下功能,可用于创建、设计和编辑报表。
1.标尺标尺位于设计视图顶部和左侧。
他们可以直观的显示控件在报表中的位置和它们在打印时的显示方式。
请注意您必须添加的左、右边距宽度,以确定您的报表是否适合所选的纸张大小。
2.设计器选项卡该设计器提供三个选项卡:设计器、脚本和预览。
您可以在设计器选项卡中以可视方式创建报表布局、在脚本选项卡中将脚本添加到报表事件中以实现.NET 功能,并在预览选项卡中查看结果。
3.设计器按钮设计器按钮位于设计界面下方设计器选项卡的旁边。
尺寸线、隐藏网格、点、线、对齐线,和网格线对齐按钮可帮助您对齐报表控件和数据区域。
选择模式和平移模式按钮决定您是否可以选择设计界面中的控件,或移动放大报表的可见区域。
4.缩放栏缩放栏提供了一个滑块,拖动它可以缩放设计界面,或者您可以在滑块任一端使用放大和缩小按钮。
3.1.3RDL报表菜单3.1.4RDL报表工具箱当处于RDL报表的设计界面时,ActiveReports RDL报表工具箱将变为可用。
ActiveReports使用指南--创建年度报表用户可以在ActiveReports的Sample中找到Annual Report,大家可以通过运行此用例,配合以下文字介绍,学习到如何使用子报表,区域属性,以及图表控件来快速的建立一个年度报表。
以下按照Solution Explorer窗口里的文件逐个介绍。
1. 年度报表(主报表)以下介绍的是主报表的建立,此年度报表分为三页,缩影如下图。
a) 报表页眉区域(第一,二页)在这次介绍的示例中,我们的报表页眉区域分为两页。
这里通过使用PageBreak控件将ReportHeader分成两页,并且将ReportHeader区域的NewPage属性设置为After. 另外,这个报表会告诉用户可以使用Label的BackColor和ForeColor属性建立需要区域视觉分辨性强的报表。
这个报表的ReportHeader区域安插了SubReport控件,在ReportStart事件里,使用程序编译连接至ProductSalesByCategory报表。
建议在ReportStart事件中初始化报表,而并非是在每个区域的Format事件。
CSharp:private void AnnualReport_ReportStart(object sender,System.EventArgseArgs){//Set subreport control's Report property to a new report instance this.srptTop10.Report = new Top10();this.srptProductSales.Report = new ProductSalesByCategory();}VB:Private Sub AnnualReport_ReportStart(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.ReportStart'Set subreport control's Report property to a new report instance Me.srptTop10.Report = New Top10()Me.srptProductSales.Report = New ProductSalesByCategory()End SubReportHeader区域右半部分黄色背景的,使用的是Shape控件,通过BackColor 属性设置颜色。
ActiveReports 报表应用教程(1)—Hello ActiveReports在开始专题内容之前,我们还是了解一下ActiveReports是一款什么产品:ActiveReports是一款在全球范围内应用非常广泛地报表控件,以提供.NET报表所需地全部报表设计功能领先于同类报表控件,包括对交互式报表地强大支捋、丰富地数据可视化形式、与Visual Studio地完美集成、以及对WPF/WinForm// Silverlight和Windows Azure 地多平台支持等.通过ActiveReports报表控件,您除了可以创建常用地子报表、交叉报表、分组报表、分栏报表、主从报表等商业报表外,还可以创建具备数据筛选、数据过滤、数据钻取、报表互链等交互能力地数据分析报表,并把数据以可视化地方式呈现出来,快速为应用程序添加强大地报表功能.对于很多中国ActiveReports报表控件用户来讲,第一次接触该产品可能是ActiveReports 1.0日文版,因为ActiveReports产品是日文工程中报表功能开发最为常用地报表控件.随看ActiveReports近二十年地发展, ActiveReports最新版本为ActiveReports 7,该版本内置了中文、英文和日文界面地支持.同时,该版本支捋WinForms. 、 MVC X Silverlight. WPF 和Windows Azure 平台.ActiveReports报表应用教程地主要目地是向大家展示,在应用系统中如何通过ActiveReports完成各种报表系统地需求•主要展示地报表需求分为以下几种类型:1.常规报表心3)圭小后—匕6 I、▼ ◎曲k2.交互式报表动态过滤动态排序向下钻取贯穿钻取报表批注文档目录销售数据分析弟1页.共3贡7 月SM5阳讷孑$27,861.89订单貧号产品右徐stst砌san谄各金8110260山透片15$39.4025.00%$445.2510260苏打水21$12.0025.00%$185.0010261花生20S8.000.00%S 160.001025&12$10.400.00%$124.8010257牛腐干25$35.100.00%$577.503.嵌入第三方控件ActiveReports控件与Visual Studio完美集成,给我们带来更为灵活易用地报表定制和自定义控件嵌入支持, 除了可以在报表中使用ActiveReports内置控件外,您还可以在报表中添加任意地第三方.NET控件,从而满足您更多地报表扩张能力地需求.ActiveReports Z\除了支扌寺内麗的几十种报表拘打卜,您还可以在ActiveReports区域抿表中便用,NET标准控件、Compone nt One Studio for WindowsForms 控件、Spread for Windows Forms疗件亦任竟的第三方NET控件•本示例中演示了CIGauge for Windows Forms和CLChart for Windows Forrm按件在ActiveReports区域报裏中曲使用。
本贴旨在构建一个错误速查手册(上百条吧),如果遇到同样的错误问题,大家就不用毫无头绪了,可以对照帖子的错误描述和解决方法,先自我排检。
(本贴会及时更新,更欢迎大家补充~提供有效的错误描述和解决方法,会奖励高额金币啦~~)1. FlashViewer 错误代码#2032原因1:项目中未加载Grapecity.ActiveReports.Flash.v10.Resources.swf 和Grapecity.ActiveReports.Flash.v9.swf 文件解决方法:在路径下 C:\Program Files (x86)\GrapeCity\ActiveReports10\Deployment\Flash,找到这两个文件,添加到网页的同一目录下。
原因2:部署时,报这个错误是因为引用GrapeCity.ActiveReports相关的dll文件的版本号不对或与WebConfig文件的不一致。
解决方法:将现有项目中所有的GrapeCity相关的dll文件移除,在VS中,从路径下C:\Program Files (x86)\Common Files\GrapeCity\ActiveReports 10 将DLL文件添加到项目中(如果不知道添加那几个,可对照着WebConfig文件添加)2. RDL报表预览时报无限空白页错误原因:报表设计方式问题解决方法:修改报表设计。
3. LoadStreamIoError.原因:数据部分出了问题4. 数据呈现没有问题,导出数据Word,图片,PDF没有问题,只有导出Excel报404错误原因:项目中缺少DocumentFormat.OpenXml dll文件解决方法:需要手动引用到项目中,在AR的安装目录:C:\Program Files (x86)\Common Files\GrapeCity\ActiveReports 105. 程序部署后报报License错误,“License for the PageReport cannot be found.”原因:License.licx文件缺少PageReport的声明项。
使用ActiveReports报表服务器创建并发布报表添加报表模板1.创建并发布报表使用ActiveReports报表设计器设计一张报表的步骤包括:1)新建报表模板:开始一张新报表的设计。
2)添加数据源:连接到一个或多个报表数据来源,例如SQL Server,Oracle等关系型数据库。
3)添加数据集:通过可视化查询设计器设计报表数据的查询语句,也可以直接编写SQL查询语句。
4)设计报表布局:设计报表数据的展示方式,诸如表格、图表等,以及具体的格式,诸如字体、边框等。
5)预览报表内容:预先查看报表设计效果。
6)发布报表:将设计好的报表模板上传到ActiveReports报表服务器上,供报表阅读者查看。
以下详细介绍各个步骤的具体操作方法。
1.1添加报表模板报表阅读者看到的报表,实际上是由报表模板和数据两部分组成的。
报表模板就是报表的格式框架,报表处理引擎将来自数据源的数据,填充到报表模板中,就形成了最终用户看到的报表。
因此,设计一张新报表的第一个步骤,就是创建一个新的报表模板。
新建一个报表模板的步骤如下:1)打开ActiveReports设计器,选择【文件】菜单的【新建】命令,或者选择设计器左上角的【新建】按钮;2)在弹出的对话框中包含三种报表模板:区域报表、页面报表和RDL报表。
三种模板代表了三种报表布局类型,三种类型各自的特点如下:如无特殊要求,建议选用RDL报表,因此以下以RDL报表为例进行说明。
3)点击【确定】,创建好一个RDL报表模板,创建完成之后,会自动打开报表设计界面。
直线、文本框等。
根据报表类型的不同,控件工具栏中的可选元素也不同。
设计器界面的中间部分,是报表设计的工作区。
底部有设计器、脚本、预览等三个选项卡,分别用于设计报表的布局、编写报表的脚本、预览报表的内容。
设计器界面的右侧上部为报表资源管理器,以树形目录结构显示报表中的各种元素,例如数据源、参数、字段等。
设计器界面的右侧下部为属性窗格,显示设计器当前选中元素的各项属性,例如选中一个表格时,属性窗格中显示表格的边框、字体等属性。
ActiveReports报表设计器设计不同报表:公式与自定义函数ActiveReports 报表设计器设计不同报表:公式与自定义函数本节主要介绍了报表实现时经常用到的数据格式化、数据运算和内置函数的使用。
ActiveReports允许通过TextBox控件上的OutputFormat属性设置日期,时间,货币以及其他数值的格式化字符串。
此外,报表模板中一些控件的Value属性设置不仅仅是单一的数值或字符串,很多时候都需要使用数据运算或者内置函数来设置他的Value属性。
目录:◆数据格式化◆数据运算◆使用内置函数数据格式化ActiveReports中的数据格式化,如何设置数据的格式化字符串,比如:数字,金额,日期等。
完全兼容微软的数据格式化字符串(MSDN的Formatting Types),最大程度方便了.net开发人员的学习和经验复用。
其中页面/RDL报表,通过文本框控件的Format属性设置日期,时间,货币以及其他数值的格式化字符串。
设置的格式化同。
备注:页面报表的表格、距表控件数据格式的设置同文本框的设置。
其中区域报表,通过文本框控件上的OutputFormat属性设置日期,时间,货币以及其他数值的格式化字符串。
备注:ReportInfo控件对RunDateTime和页码有很多预设的格式化选项。
数据格式化字符串性值由分号分割的四个部分。
每一部分包含数值的不同格式:第一部分为正数的格式。
第二部分提供负数的格式。
第三部分为零值的格式。
第四部分提供Null或者System.DBNull值的格式。
例如:¥#,#00.00; (¥#,#00.00); ¥0.00; #时间:hh:mm tt = 09:00 上午HH:mm = 21:00 (二十四小时制)HH = 小时,二十四小时制hh = 小时,十二小时制mm = 分钟ss = 秒tt = 上午或下午日期:dddd, MMMM d, yyyy = Saturday, December 25, 2004dd/MM/yyyy = 25/12/2004d or dd = 日的数字格式ddd = 周日的短字符串格式(例如,用“Sat”表示Saturday)dddd = 周日的长字符串格式(例如,“Saturday”)MM = 月的数字格式MMM = 月的短字符串形式(例如,用“Dec”表示“December”)MMMM = 月的长字符串格式(例如,“December”)y or yy = 年的两位数字的格式(例如,用“04”表示“2004”)yyyy or yyyy = 年份的四位数的格式(例如,“2004”)货币:¥0.00 = ¥6.25¥#,#00.00 = ¥06.25C or c = 当前电脑设置的货币数字:# = 数字或者没有p = 百分比,数值乘以100的字符串表达式0 = 数字或零E or e = 科学计数格式F or f = 固定小数格式N or n = 自然数P or p = 百分比X or x = 16进制数据运算本节通过对比的方法,介绍一下页面/RDL报表和区域报表在数据运算、表达式拼接上的异同:相同的:1)都以等号(=) 开头2)都支持常规的+、-、*、/等四则数学3)都支持字符串和字段数据拼接不同的:1)表达式不同:=Fields!LastName.Value (页面/RDL报表)=LastName (区域报表)2)同时,页面/RDL报表提供了UI精简模式表达式表达式编辑中:=Fields!.Value在设计界面中:= []除了字段名称的简写外,您也可以直接在设计界面输入参数简写[@Param],全局变量[&Value]。
应用程序的最佳报表生成工具软件目录目录1.引言 (3)2.商家简介 (3)3.ActiveReports简介 (4)4.功能亮点 (4)4.1易于使用的报表设计器,提高报表设计效率 (4)4.2新功能帮助实现精美报表效果 (4)4.3在应用程序中使用报表设计器控件 (5)4.4 Flash报表浏览器丰富了Web应用的浏览体验 (6)4.5可定制的图表控件提供了丰富的图表效果 (6)4.6子报表和分组提供了灵活的报表布局 (7)4.7高级PDF输出功能,包括数字签名和时间印章 (7)4.8提供水晶报表和Access报表转换工具,方便移植 (8)4.典型案例 (8)5.典型客户 (9)荣誉奖项 (9)6.授权简介 (11)1.引言报表,是许多应用系统中非常重要的组成部分。
报表工具,是高效率开发和运行报表的关键。
今天,已经没有人再会用手工编写代码的方法来制作报表了吧。
目前,已经有了大量报表工具可供选择,各厂家做足宣传,产品功能令人眼花瞭乱。
本文将从用户的角度,谈谈如何以一个可靠的方法,选择报表工具。
2.商家简介葡萄城是一家总部设在日本仙台的软件研发公司,我们在软件研发领域有超过20年的经验积累。
分布在中国、印度、越南和美国等国家的超过800名员工,共同创造和分享了以崇高道德为核心的多元企业文化,并始终如一地为社会奉献格调高雅的软件产品与服务。
葡萄城自1988年进入中国市场以来,先后在西安、上海创建分公司,把国际上优秀的软件系统、行业经验和管理经验带入中国,了解客户实际需求,为客户提供量身定做的解决方案。
无论是在业内还是在我们的客户中都赢得了很高的赞誉。
葡萄城是微软公司认证的金牌合作伙伴,并且是微软在中国区认证的金牌合作伙伴中唯一通过CMMI4级认证的企业,同时也是少数几个Microsoft Office Advisory Board成员之一。
从上世纪80年代,我们就加入了Microsoft Early Adopter Partnership。
使用ActiveReport for .net 进行报表开发(一)--开始ActiveReport 是.net下的一个出色的报表开发程序,虽然和水晶报表相比,名气不那么大,甚至有很多人不知道它的存在,但是并不妨碍它在.net报表开发中的出色表现,本文将一步一步地介绍如何使用它和VS2005开发.net报表。
1. 安装:你可以从Data Dynamics的网站上下载最新的ActiveReport for .net 2 ,你可以免费使用,但是在生成的报表最下边有水印,不过不影响报表的整体美观。
下载后直接安装就可以了。
安装完后会看到开始-程序菜单里的DataDynamics的目录,里面包括了,帮助,例子程序等。
2. 第一个Winform报表程序。
在安装完成后,启动VS2005,会看到启动界面上有ActiveReport的图标,进入后新建一个工程,并且给工程添加新文件,在文件类型中就可以看到ActiveReport文件的图标。
给报表文件命名为ActiveReport1,确定后会看到项目中有一个ActiveReport1.rpx文件,这个就是报表文件了。
打开文件,就是报表的设计界面,在这里可以看到三部分,PageHeader(表头),Detail(明细),PageFooter(表尾)。
打开工具箱,给Detail部分随便添加一个Label。
下面就要显示这个报表了,在Form上添加一个V iewer控件,如果工具箱里没有,可以通过配置工具箱来找到它。
Viewer添加完后,在Form中写代码:ActiveReports1 rpt = new ActiveReports1();rpt.Run();this.viewer1.Document = rpt.Document;然后F5运行,就可以看到在Viewer控件中显示报表了。
要注意的是,项目名称不要命名为ActiveReport,否则会提示找不到ActiveReport.rpx文件。
应用程序的最佳报表生成工具软件目录目录1. 引言 (3)2.商家简介 (3)3.ActiveReports简介 (4)4.功能亮点 (4)4.1易于使用的报表设计器,提高报表设计效率 (4)4.2新功能帮助实现精美报表效果 (4)4.3在应用程序中使用报表设计器控件 (5)4.4 Flash报表浏览器丰富了Web应用的浏览体验 (6)4.5可定制的图表控件提供了丰富的图表效果 (6)4.6子报表和分组提供了灵活的报表布局 (7)4.7高级PDF输出功能,包括数字签名和时间印章 (7)4.8提供水晶报表和Access报表转换工具,方便移植 (8)4.典型案例 (8)5.典型客户 (9)荣誉奖项 (10)6.授权简介......................................................................................... 错误!未定义书签。
1.引言报表,是许多应用系统中非常重要的组成部分。
报表工具,是高效率开发和运行报表的关键。
今天,已经没有人再会用手工编写代码的方法来制作报表了吧。
目前,已经有了大量报表工具可供选择,各厂家做足宣传,产品功能令人眼花瞭乱。
本文将从用户的角度,谈谈如何以一个可靠的方法,选择报表工具。
2.商家简介葡萄城是一家总部设在日本仙台的软件研发公司,我们在软件研发领域有超过20年的经验积累。
分布在中国、印度、越南和美国等国家的超过800名员工,共同创造和分享了以崇高道德为核心的多元企业文化,并始终如一地为社会奉献格调高雅的软件产品与服务。
葡萄城自1988年进入中国市场以来,先后在西安、上海创建分公司,把国际上优秀的软件系统、行业经验和管理经验带入中国,了解客户实际需求,为客户提供量身定做的解决方案。
无论是在业内还是在我们的客户中都赢得了很高的赞誉。
葡萄城是微软公司认证的金牌合作伙伴,并且是微软在中国区认证的金牌合作伙伴中唯一通过CMMI4级认证的企业,同时也是少数几个Microsoft Office Advisory Board成员之一。
本贴旨在构建一个错误速查手册(上百条吧),如果遇到同样的错误问题,大家就不用毫无头绪了,可以对照帖子的错误描述和解决方法,先自我排检。
(本贴会及时更新,更欢迎大家补充~提供有效的错误描述和解决方法,会奖励高额金币啦~~)1. FlashViewer 错误代码#2032原因1:项目中未加载Grapecity.ActiveReports.Flash.v10.Resources.swf 和Grapecity.ActiveReports.Flash.v9.swf 文件解决方法:在路径下 C:\Program Files (x86)\GrapeCity\ActiveReports10\Deployment\Flash,找到这两个文件,添加到网页的同一目录下。
原因2:部署时,报这个错误是因为引用GrapeCity.ActiveReports相关的dll文件的版本号不对或与WebConfig文件的不一致。
解决方法:将现有项目中所有的GrapeCity相关的dll文件移除,在VS中,从路径下C:\Program Files (x86)\Common Files\GrapeCity\ActiveReports 10 将DLL文件添加到项目中(如果不知道添加那几个,可对照着WebConfig文件添加)2. RDL报表预览时报无限空白页错误原因:报表设计方式问题解决方法:修改报表设计。
3. LoadStreamIoError.原因:数据部分出了问题4. 数据呈现没有问题,导出数据Word,图片,PDF没有问题,只有导出Excel报404错误原因:项目中缺少DocumentFormat.OpenXml dll文件解决方法:需要手动引用到项目中,在AR的安装目录:C:\Program Files (x86)\Common Files\GrapeCity\ActiveReports 105. 程序部署后报报License错误,“License for the PageReport cannot be found.”原因:License.licx文件缺少PageReport的声明项。
使用ActiveReports报表服务器创建并发布报表添加数据源连接1.1添加数据源连接添加数据源的目的是指定报表数据的来源。
ActiveReports支持多种数据源,包括主流的关系型数据库和其他ODBC、OLE DB数据源。
ActiveReports的RDL类型报表支持在一个报表模板中添加多个数据源。
添加数据源的步骤如下:1)在ActiveReports报表资源管理器中,你可以看到“数据源”节点,在该节点上鼠标右键选择“添加数据源”菜单项;在弹出的“报表数据源”设置对话框中可以指定:OLE DB、SQL、XML等类型数据源,并设置具体数据源的连接属性。
下图为连接Access数据库的示例。
2)点击“确定”按钮,完成数据源创建操作,此时,在报表资源管理器窗口中的“数据源”节点下新增了一个名为“DataSource1”的子节点。
1.2添加数据集数据集就是真正需要展现在报表中的数据。
数据源中往往有很多数据,比如数据库中可能有很多数据表,但是真正需要在本张报表中展示的数据,只是其中一个或数个表的内容。
添加数据集就是设计查询方法,从数据源中取出需要的数据。
ActiveReports报表支持在一个报表模板中添加一个或多个数据集,添加步骤如下:1)在ActiveReports报表资源管理器中已添加的“DataSource1”数据源节点上,鼠标右键选择“添加数据集”菜单项。
2)在弹出对话框的“查询”选项卡中写入SQL查询语句(例如:select top 10 * from 订单)。
3)点击验证数据集图标验证Sql语句的正确性。
此图标变为灰色并且没有提示信息时表示验证成功,而当提示错误信息时表明Sql语句不合法;4)点击【确定】返回到报表资源管理窗口之后,点击“DataSet1”节点,可以看到SQL查询语句返回查询结果的全部数据字段。
尽管ActiveReports报表设计器简单易用,您在设计报表时仍然可能遇到一些小麻烦。
本帖收集一些报表设计中的排错小技巧,旨在帮助大家少走弯路。
1. 日期型参数的匹配问题
报表设计中经常有以日期型参数过滤数据的需求。
不同的数据库中的日期型数据的比较方式存有差异。
如果发现过滤数据不准确,或者直接报【参数不匹配】的错误,请参考以下建议:(1)将参数的数据类型设置为Date,报表系统将自动控制输入格式,并弹出日历方便用户选择日期,可有效避免报表查看者输入错误的日期格式。
(2)如果数据库的日期字段实际为字符型,注意将数据库的查询参数设置为表达式,以字段数据格式对报表参数进行格式化,表达式的形式为:
= Format(Parameters!报表参数名.Value, "yyyy-MM-dd").ToString()
2. 设计时预览正常、发布到服务器报错的问题
极少数情况下,在报表设计器中预览时可以看到报表正常显示,但是发布到报表服务器之后,却看到【报表存在错误,无法显示】的错误提示。
此时应检查是否存在多余的报表参数。
如果有报表参数并未被数据集使用,并且勾选了【隐藏】,而且在【默认值】设置中选择了【来自查询语句】,但是却没有设置【数据集】和【值字段】,那么,最简单的办法就是:删除这个无用的报表参数!。
ActiveReports报表控件动态绑定数据源教程:集合对象数据源ActiveReports所提供的两种报表模型页面报表和区域报表都支持集合对象数据源绑定,本文就主要讲解如何为以上两种报表模型设置集合对象数据源。
我们使用的实体类型Product 共包含四个字段,代码如下:(一)页面报表1、在工程中添加一个名为ListPageReport.rdlx 的页面报表添加完成之后在解决方案窗口中选中ListPageReport.rdlx 文件,并按下F4 以打开该文件的属性窗口,在属性窗口中将“复制到输出目录”设置为“始终复制”2、在报表资源管理器窗口中,鼠标右键单击“数据源”节点,并选择添加数据源菜单项在出现的“报表数据源”对话框中,设置类型为“Object Provider”,点击“确定”按钮以完成添加数据源操作3、返回到报表资源管理器中,在ListDataSource节点上鼠标单击右键,选择“添加数据集”菜单项4、在出现的“数据集”对话框中,切换到“字段”选项卡页面,并添加与Product 类型中同名的四个字段,如下点击“确定”按钮以完成添加数据集操作,返回到报表资源管理器窗口中,可以看到ListDataSet 节点下会显示我们添加的四个字段至此,我们已经完成报表数据源的创建工作,接下来就设计报表界面以显示数据源数据5、从VS工具箱中的ActiveReports 7 页面布局报表分类中,将Table 控件添加到报表设计界面,并设置每个单元格的对应的数据字段6、完成全部报表设计工作之后,我们在Form1 中添加ActiveReports 报表浏览器控件Viewer7、在Form1 的后台代码中加载ListPageReport.rdlx 报表,并在LocateDataSource 事件中为报表加载数据(二)区域报表1、在项目中添加名为ListSectionReport.cs 的区域报表文件2、在报表设计界面中的Detail区域中添加四个TextBox 控件,分别设置其DataField 属性为ID,Name,Price,Stock3、在Form1后台代码中加载ListSectionReport 报表,并设置数据源运行截图:。
在ActiveReports 10 最新版本中,我们针对中国式复杂报表需要,增加了大量新功能,以及对现有功能的改进,下面将介绍本次发布的主要亮点特性。
矩表功能:类似数据透视表功能,中国式复杂报表完美解决方案最新的矩表取代了之前的矩阵功能。
其兼备了矩阵的所有特性,可以帮助您可视化创建交叉表,数据透视表和表格等方式的数据展示。
使用矩表数据区域,可以实现下面的需求:●创建类于Excel中的数据透视表报表●创建矩阵或者交叉报表●可以使用多个相邻行和列分组●垂直和横向单元格合并操作●创建任意类型的中国式复杂表格类报表全面支持 .docx 格式的Word导出使用ActiveReports10最新提供的Word呈现扩展插件可以将页面报表和RDL报表导出为Office Open XML文档格式,即更常见的文件扩展名docx。
呈现引擎支持自然的文档刘和自动化特性,例如页头,页尾,目录表等。
页面和RDL报表中提供类似于CSS的样式表功能ActiveReports为页面和RDL报表引进了类似CSS的样式表,允许多用户使用报表设计器设计出统一主题的报表。
样式表功能可以简单快速的为页面和RDL报表创建统一的外观。
为了维护报表的统一布局设计时可以轻易的操作Logo,字体,颜色,背景颜色等式样的格式。
可以在一个样式表中添加多种样式,为了方便携带可以将其内嵌到报表中,或者为了其他报表可以重复使用将其保存到.rdlx-styles格式的文件中。
同样在运行时也可以使用Stylesheet.Source和Stylesheet.Value属性将这些样式表添加都报表中,为选中的控件设置StyleName属性以适用样式。
使用ActiveReports报表服务器生成并预览报表在ActiveReports10版本中,服务器端的报表生成不再限制于基于报表浏览器的网络浏览器。
现在Windows窗体报表浏览器和WPF报表浏览器同样有能力预览,打印和导出ActiveReports服务器上部署的报表。
activereport报表控件的详细使⽤说明使⽤ActiveReport报表若⼲问题使⽤ActiveReport报表若⼲问题activereport报表控件的详细使⽤说明使⽤ActiveReport报表若⼲问题1.如何判断是否到报表的最后⼀页2.当报表数据源为空是,如果填充记录,也就是空报表(主要报表是以表格⽅式)第页20⾏数据!3.以表格形式做报表时,细节和本页合计部分有⼀部分空间,如何去掉,谢谢!==================以下为CSDN handwolf(初学者)回答1,这⼀点我也不知道有什么属性可以判断是否到报表的最后⼀页,但是⽅法是有的,我以前的⽅法是控制⼀页的记录⾏数,然后根据记录总数计算出总的页数,报表的pageNumber属性表⽰当前的页码,⽐较⼀下就可以了,然后显⽰总页数与当前页码的⽅法如下:--在页脚中添加⼀个⽤于显⽰总页数的Field和⼀个⽤于显⽰第⼏页的Field2。
--显⽰总页数的Field1:设置Summaryrunning的值为:0(ddsrNone)summaryFunc的值为0Summarytype的值为4--显⽰第⼏页的Field2:设置Summaryrunning的值为:2(ddsrall)summaryFunc的值为2Summarytype的值为42,这个问题我也遇到过,我的解决⽅法是程序控制(假设你⼀页打印20⾏)1)如果记录源空,则可以建⼀临时记录集,除了允许字段为空外,其他的与原记录源相同,这样可以增加空记录(⽐如20条),然后⽤临时记录集绑定2)如果记录源不空,记录数不能添满⼀页,想⽤空记录添满;则可以⽤如下⽅法控制:⾸先,要有变量记录当前打印的是⼀页中的第⼏⾏(如整型的printline变量)然后在报表的Detail_Format()事件中控制是否到达记录集尾,是否打印了20⾏如果打到最后⼀条记录还没有打完⼀页,就让帮定的记录集moveprevious!!!直到打印完⼀页!注意:这⾥的最后⼀⾏可要控制好第⼀次moveprevious时,不要进⾏清空绑定的field控件第⼆次到最后⼀次moveprevious时,⼀定要清空绑定的field控件,否则会⼀直显⽰最后⼀条记录3,你可以将本页合计放在Detail部分,设置它的visible为false,当到这⼀页最后⼀条记录时,设置它的visible为true,下⾯的是第⼀次做的代码,命名不规则!!!希望你看得不会累!后来写的代码是⽤临时记录集的!Dim rst As ADODB.RecordsetDim num As Integer '记录已输出的有效记录数-1Dim bc As Integer '记录所需补的空记录数,在变,最后减为0Dim bc2 As Integer '记录所需补的空记录数,⼀直不变Dim totalPagenum As Integer '记录总页数Dim recordnum As Integer '记录总记录数Dim flag As Boolean '控制开关,控制最后⼀条记录的显⽰Private Sub ActiveReport_ReportStart()Set rst = GetRecordset("select * from ymjzjl") '注意这⾥的打开⽅式,recordcount'的属性必须可⽤'赋初值num = -1recordnum = rst.RecordCount'总记录数bc = 10 - recordnum Mod 10If bc = 10 Thenbc = 0End Ifbc2 = bc '需要补充的⾏数If bc = 0 ThentotalPagenum = recordnum / 10'总的页数ElsetotalPagenum = recordnum / 10 + 1End Ifrst.MoveFirstDataControl1.Recordset = rstEnd SubPrivate Sub Detail_Format()PageBreak1.Enabled = False 'PageBreak1⽤来控制⼀页只显⽰10条记录num = num + 1 '已经打印的⾏数If num >= recordnum - 1 And bc > 0 ThenIf flag = True ThenField2.Text = ""Field1.Text = ""Field3.Text = ""Field4.Text = ""Field5.Text = ""End Ifflag = Truerst.MovePreviousbc = bc - 1 '还需打印的空⾏减1End IfIf bc = 0 And flag = True ThenField2.Text = ""Field1.Text = ""Field3.Text = ""Field4.Text = ""Field5.Text = ""End IfIf (num + 1) Mod 10 = 0 ThenIf Me.pageNumber = totalPagenum ThenMsgBox ("Last Page!") '最后⼀页的最后⼀条,这⾥你可以添加⾃⼰的代码End IfIf Not Me.pageNumber = totalPagenum ThenPageBreak1.Enabled = True '⼀页10⾏打印完毕,换页End IfEnd IfEnd Sub估计没有⽅便的⽅法可以得到报表的总页数,因为你的程序可以控制页数,⽐如,你可以在程序中早点把关联的记录集movelast,这样就可以早点结束报表,本来要打印20张的可以控制在打印10张,编译器⼀般没有这么⼤的能⼒可以计算出这个时候报表的总页数!!!所以,最好的⽅法还是⾃⼰⽤程序来算出报表的总页数!你可以控制⼀张纸打印的记录数,同时算出总的记录数,很容易就可以得到你要的总页数了!!!很遗憾,不能给你找到⽅便的⽅法!!!使⽤ActiveReport报表若⼲问题21、打印预览时表格的边框是很淡的,但打印出来变成很粗了!请问这如何解决?我打的报表要求表格的边框的颜⾊要很淡,不要太粗!--------------如果是报表边框的话Me.PageBorder.LeftStyle = ddBLExtraThickSolidMe.PageBorder.RightStyle = ddBLExtraThickSolidMe.PageBorder.TopStyle = ddBLDoubleMe.PageBorder.BottomStyle = ddBLDouble 具体粗细你看吧我设置了field的边框,Field1.Border.TopStyle = ddBLSolidField1.Border.TopColor=颜⾊打印预览时候field的边框的颜⾊是很淡的,但打印出来就变成很粗了。
ActiveReports 简介ActiveReports 融合了Micorsoft Visual Basic的功能和灵活性,以及高级ActiveX Designer Component 技术,为Visual Basic开发员提供终端报表设计器。
ActiveReports 完全集成了Visual Basic编码环境,从外观和感觉上都像是VB。
不存在模糊的脚本或工作,提供了完全开放的框架结构。
您可以在报表中使用VB代码,ActiveX和OLE Objects,因此您可以无限制的处理最复杂的报表。
ActiveReports 包括了一个Report Wizard,帮助你一步步创建简单报表,而不需要编写任何代码。
向导作为一个添加模块集成在Visual Basic环境中。
ActiveReports 基于Active Designer 设计说明,允许控件集成到宿主设计环境中,并允许其充分利用环境服务。
设计器是一个非常灵活的ActiveX控件和对象宿主。
您可以在您的报表中插入任一控件或OLE对象,如图表和文档。
OLE对象可以绑定到数据库中BLOB字段。
数据访问∙支持DAO,RDO,ADO。
∙新功能!支持XML数据源以及XPath,XSL表达式。
∙支持来自于数组,集合以及其他数据提供形式的非绑定数据。
∙以最大的灵活性和连接效率绑定到记录集和结果集中。
框架结构∙完全运行时访问对象,数据源和绑定,能在运行时动态的添加控件/区域以修改报表操作。
∙完全控制打印机任务,属性和输出设备。
∙控件和OLE对象。
设计环境∙容易使用,类似于Office的设计器环境。
∙新功能!Access Reports导入向导。
∙新功能!Crystal Reports 导入向导。
∙新功能!VBScript 和JScript 事件和表达式以及内值语法突出显示脚本编辑器。
∙新功能!ActiveReports 1.0 升级。
∙包含数据绑定文本,复选框,图像,OLE对象,Rich 文本和子报表。
ActiveReports报表在物流行业企业的报表开发指南物流行业特点物流产业是物流资源产业化而形成的一种复合型或聚合型产业。
物流资源包括运输、仓储、装卸、搬运、包装、流通加工、配送、信息平台等。
这些资源产业化后就形成了运输业、仓储业、装卸业、包装业、加工配送业、物流信息业等等。
它是一种复合型产业,因为所有产业的物流资源不是简单的垒加,而是一种整合。
一个复合产业的信息化,是对整个行业发展至关重要,利用信息技术对物流过程中产生的全部或部分信息进行采集、分类、传递、汇总、识别、跟踪、查询等处理活动,以实现对货物流动过程的控制,从而降低成本、提高效益的管理活动。
信息化是现代物流的灵魂,是现代物流发展的必然要求和基石。
而信息化建设最重要的就是“数据过程管理”,其中包括,业务受理、仓储管理、配送管理、客户管理和决策支撑等,另外还有涉及企业内部相关部门及资源分配等过程,所以物流行业的过程管理是比较复杂的管理过程。
物流行业的信息化普及,最基本的需要解决的就是,将各个过程数据化,并将相关数据进行结合分析,将关键数据指标转换为决策数据。
而这其中大量的数据需要报表来呈现,葡萄城报表模板库汇集了行业内近数十张经典报表模板,使您快速掌握物流行业模板特点,下载地址:物流信息技术发展及未来趋势物流业的信息技术使用决定了整个行业信息化的大方向及在信息化过程中必须要完善处理和融合的技术。
现有几项物流信息技术的使用。
1.条码技术 以条码为代表的自动识别技术从诞生之日起就与物流系统结下了不解之缘。
条码技术实现了数据采集的高速自动化,在数据采集、数据传递方面显现独到的优势,为物流与信息流的结合提供了有效手段。
条码在仓库管理、生产过程控制、供应链管理以及产品售后跟踪服务中均得到了广泛的应用。
条码从大类上分为一维码和二维码,如常见的QRCode、Code128、Ansi39x、EAN_13等。
条码能在很小的面积内存储大量的信息,结合条码识别设备的使用能够快速的获取该物品的所有信息,因此在物流业信息化过程中,能够正确渲染条码,并保证条码的保真性,保证在不同的显示模式下能够被正确识别,是处理物流信息中最为重要的一个环节。
基于VB和ActiveReports控件的RCM报表系统
胡起伟;王广彦
【期刊名称】《兵工自动化》
【年(卷),期】2006(25)7
【摘要】基于VB和ActiveReports控件的RCM报表系统,通过从数据库中读取数据,生成报表并显示数据.为读取数据方便,系统定义了RCM实体类、集合类、数据库管理类,形成对象访问结构层次.该报表设计、实现和显示则交给ActiveReports,采用程序控制方法完成.
【总页数】3页(P88-90)
【作者】胡起伟;王广彦
【作者单位】军械工程学院,装备指挥与管理系,河北,石家庄,050003;军械工程学院,装备指挥与管理系,河北,石家庄,050003
【正文语种】中文
【中图分类】TP311.1
【相关文献】
1.基于VB的动态质量报表系统的设计与实现 [J], 韩翠芬;樊东海;崔宏杰
2.基于Excel控件和SQL Server的自定义报表系统 [J], 张永涛
3.基于VB与Access数据库的Intouch报表系统的设计与实现 [J], 杜岗;邹孝付;韩芳成
4.基于ActiveReports控件的高校准考证制作研究与设计 [J], 林振洲
5.基于VBA的财务报表系统分析 [J], 王春红
因版权原因,仅展示原文概要,查看原文内容请购买。
ActiveReports 报表设计器设计不同报表:脚本
上一节的公式与自定义函数所讲的数据处理都是“静态”的,即通过属性设置格式、输入数学表达式、使用ActiveReports内置的函数。
本节讲述如何通过后台代码、脚本来实现“动态”,即运行时来修改数据内容或者UI控件的文字、颜色等属性内容。
目录:
◆页面/RDL报表中脚本的使用
◆区域报表中脚本的使用
页面/RDL报表中脚本的使用
通过脚本可实现在运行时修改数据。
添加页面/RDL报表后,会出现如下的模板,脚本选项卡将会出现在报表设计器中,然后您可以在脚本选项卡中写入代码()。
注意:在页面/RDL报表中,可以使用Visual 作为脚本语言;
页面/RDL报表支持多种不同的脚本类型,比如:
1)函数脚本
a.新建一个页面报表模板,并在模板中添加一个文本框控件;
b.在模板的脚本选项卡中写入如下脚本代码():
Public Function GetDueDate() as Date
Return DateTime.Now.AddDays(30)
End Function
该函数的功能是返回未来30天的日期。
c.在文本框控件的Value属性来调用此函数:Code.GetDueDate()
d.预览
2)使用自定义常量和变量
a.新建一个页面报表模板,并在模板中添加一个文本框控件;
a.在模板的脚本选项卡中写入如下脚本代码():Public Dim MyDoubleVersion As Double = 123.456
b.在文本框控件的Value属性来调用此函数:Code.MyDoubleVersion
a.预览
3)使用全局参数集合
a.新建一个页面报表模板,并在模板中添加一个文本框控件;
b.添加参数,打开ActiveReports 报表资源管理器,在参数节点上点击鼠标右键,选择
“添加参数”;
c.在打开的参数对话框中,设置参数的各项属性,在常规选项卡中点击按钮,参数名称、
类型等默认值可以不做修改;在默认值选项卡中,选择非查询结果,并点击按钮,添加一个参数的默认值,点击确定,当然您也可以选择查询结果;
d.在模板的脚本选项卡中写入如下脚本代码():
Public Function ReturnParam() As String
Return "param value = " + Report.Parameters!ReportParameter1.value.ToString()
End Function
e.在文本框控件的Value属性来调用此函数:Code.ReturnParam()
f.预览
4)判断数据值返回颜色
a.重复6.3.1节的创建主报表模板,或者直接打开已经创建好的展示产品类别的主报表;
b.在模板的脚本选项卡中写入如下脚本代码():
Public Function GetColorByValue(val As Integer) As System.ConsoleColor
Select Case val
Case 1
Return System.ConsoleColor.Blue
Exit Select
Case 2
Return System.ConsoleColor.Red
Exit Select
Case 3
Return System.ConsoleColor.Green
Exit Select
Case Else
Return System.ConsoleColor.DarkYellow
Exit Select
End Select
End Function
c.选中表格控件的明细行,在BackgroundColor属性调用:
BackgroundColor=Code.GetColorByVulue(Fields!类别ID.Value)
d.预览
6.5.1 区域报表中脚本的使用
区域报表强大的脚本编程能力,几乎无所不能,如可在脚本中控制报表的UI控件,非常方便。
不用UI调用,而是在脚本中控制UI控件,且非常好的兼容Visual 和C# 语言。
注意:在区域报表中, 可以使用Visual 和C# 语言作为脚本语言。
a.新建一个区域报表模板;
b.添加数据源和数据集
点击设计区域的明细前面的数据库图标,在弹出的对话框中选择一个数据连接类型,以OLE DB为例;
c.点击“建立连接“,在弹出的对话框中提供程序选项卡中选择OLE DB提供程序为
Microsoft Jet 4.0 OLE DB Provider ,点击“下一步”;
d.在连接选项卡中选择或输入数据库的名称,点击按钮,选择本地数据库名称;
e.完成后点击“测试连接”,弹出连接成功的对话框,点击“确定”返回到报表数据源对
话框;
f.在查询语句区域输入查询SQL语句:select 类别ID, 类别名称from 类别
g.点击“确定”返回到设计器,在右侧报表资源对话框的字段->绑定节点中发现增加了查
询到的字段;
h.设计报表,将字段->绑定节点中的字段分别拖拽到明细区域;或者在明细区域添加两个
文本框,然后将文本框的属性:DataField设置为相应的字段;
i.在模板的脚本选项卡中写入如下脚本代码(),其中txt类别ID1和txt类别名称
1是相应文本框的名称。
public void 明细_Format()
{
int id = Convert.ToInt32(this.txt类别ID1.T ext);
switch(id)
{
case 1:
this.txt类别名称1.BackColor = Color.Red;
break;
case 2:
this.txt类别名称1.BackColor = Color.Green;
break;
case 3:
this.txt类别名称1.BackColor = Color.Blue;
break;
default:
this.txt类别名称1.BackColor = Color.White;
break;
}
}
j.预览。