ActiveReport资料

本文详细介绍了 ActiveReports 中 GroupHeader 块的使用方法,包括 DataField、CanShrink、CanGrow 和 RepeatStyle 等属性的作用,以及 Detail 块的 ColumnCount 和 ColumnDirection 属性的应用技巧。此外,还深入探讨了 TextBox 控件的 DataField、OutputFormat 和 SummaryFunc 等关键属性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. ActiveReports for .NET 2 Online  | ActiveReports for .NET 3 Online

2.GroupHeader块

①GroupHeader块为每个数据组打印一次。数据组是由DataField属性中指定的字段定义的。一个GroupHeader块需要一个匹配的GroupFooter块。

②由于在分组之前,ActiveReports是不会排序的,所以你的数据源需要为在GroupHeader块中指定的所有数据字段进行排序。例如,对于需要根据国家和城市这两个字段创建两个组的报表,你必须用这两个数据字段的指定顺序进行排序。如果你的数据没有排序,那么相同组的数据就会在报表的不同的位置多次出现。

2-1.DataField属性

①对数据源进行分组的字段的名字。

②ActiveReports会检查指定字段的值的任何改变。当值发生改变时就会开始一个新的组。在新组开始前当前组就结束了。指定的字段可以来自数据源,也可以是一个在ActiveReport的DataInitialize 事件中追加到字段集合(Fields collection)中的未绑定的字段。

2-2.CanShrink属性

①指示GroupHeader块的高度是否根据它的控件的实际高度和进行调整。True:进行收缩(shrink)以适应它的控件。

2-3.CanGrow属性

①指示当块的控件高度超过它的原始高度时,块的高度是否增长。True:进行扩展(grow)以适应它的控件。False:控件会被裁剪来适应块的高度。

2-4.RepeatStyle属性

①指示在明细块或相关Footer被打印的每个列或页(every column or page)上是否打印GroupHeader块。

②RepeatStyle枚举

②-1 None:当相关的明细块打印在一个新页上时,GroupHeader块不会被重复。

②-2 OnPage:在一张新页上重复GroupHeader块

②-3 OnColumn:在一个新列上重复GroupHeader块(新列的示例不太清楚

②-4 All:在一张新页或新列上重复GroupHeader块

②-5 OnPageIncludeNoDetail:在一张包含了相关明细块或GroupFooter块的新页上重复GroupHeader块。这个属性避免GroupFooter块称为孤立的。

2-5.NewPage属性

①决定在一个块之前和/或之后插入一张新页。

②NewPage枚举

②-1 None:块会一直印刷在同一张页上,直到用完这页上的空间。

②-2 Before:在每个块实例之前,报表跳到(break to)一张新页。

②-3 After:在每个块实例之后,报表跳到(break to)一张新页。

②-4 BeforeAfter:在每个块实例之前和之后,报表都会跳到(break to)一张新页。

2-6.GroupKeepTogether属性

①指示块和它的Footer以及相关的明细是否作为一个块在同一页上打印。

②GroupKeepTogether枚举

②-1GroupKeepTogether.None:在Groupheader之后,一页可以被立即分页(broken)。

②-2GroupKeepTogether.FirstDetail:在同一页上至少和第一条明细块一起打印。

②-3GroupKeepTogether.All:GroupHeader块、明细块、GroupFooter块在同一页上一起打印。

 2-7.KeepTogether属性

①指示块是否在一页上打印

②如果这个属性设成了True,ActiveReports将会努力在当前页上打印这个块。如果内容不能放到(fit)当前页,并且当前页不是一张新页,这个块会被移到下一页。

如果这个块不能放到(fit)下一页,它将被移回到原来的位置,并且内容会被分割到多页上。

2-8.UnderlayNext属性

①指示这个块是否打印在下个块的下面(beneath) 。(下一个块会重复打印在这个块上,会发生重叠)

②下一个块的背景色需要设为Transparent,否则这个块就被隐藏了而看不到。

3.Detail块

①Detail块是报表中的主要块。对于数据源中的每条数据,都会打印一次Detail块。

3-1.ColumnCount属性

①指示报表中新页的列的数量

②这个属性可以用来打印标签(Labels)或电话薄风格的列表。每列的宽度等于报表的PrintWidth除以列的数量。

3-2.ColumnDirection属性

①决定在多列报表中如何打印明细块。(Detail Section)。

②ColumnDirection枚举 (指示多列报表的列方向)

②-1 DownAcross 在转移到列的右侧列之前,在这个列的下边打印明细。

②-2 DownAcross 在一个行的下边开始新的一行之前,在所有列的下边打印明细行。

3-3.ColumnSpacing属性

①指示列之前的空白大小。

4.TextBox控件

4-1.DataField属性

①将来自于数据源的字段名称绑定到这个控件上。

②数据首先保存到DataValue属性中,然后通过OutputFormat的处理后,再设到控件的Text中。

③DataField属性可以使用以等于号开始的脚本表达式来执行计算。比如"=UnitPrice * Qty" 或者 "=CompanyName.Trim()"。 UnitPrice, Qty 和CompanyName成员必须来自报表的字段集合(Fields collection)。

④当使用XML时,DataField必须被设为有效的XPath表达式。

4-2.OutputFormat属性

①在将Value值放到Text属性之前,使用mask string来格式化Value。

② formatting mask只能用来格式化数字和日期。不支持格式化数字字母字符串。

③在控件的块的Format事件中设置OutputFormat将不会抓取到第一条记录。发生这种行为的原因是数据是在Format事件发生之前就应用到了控件上。如果你在Format 事件中改变了OutputFormat,设置Control.Value=Control.Value,那么OutputFormat被再次应用(reapplied)。

④TextBox控件的OutputFormat属性包含由分号分割的四块内容。每个块包含对不同数字类型的格式定义。

・第一块提供正数的格式

・第二块提供负数的格式

・第三块提供0的格式

・第四块提供Null和System.DBNull的格式

4-3.WordWrap属性

①指示一个多行文本框在必要时,自动Wrap单词到下一行的开头。(换行)

4-4.SummaryGroup属性

①在进行小计时,指定group header块的名字来重置总和。

②比如,为Order group header设置计算Price的总合,将会为每一个Order group重置总和到0。

③这个属性只有在SummaryType被设置为SummaryType.SubTotal时被使用。

4-5.SummaryFunc属性

①设置求和函数类型来处理DataField的值。

②只有SummaryType被设置为SubTotal 或 GrandTotal时,SummaryFunc才会起作用。

当求和函数被使用到控件上时,CanGrow和CanShrink属性将不会起作用。因为求和是在控件的高度已经被决定及最终确定后计算的。

4-6.SummaryRunning属性

①决定是否对每一层次的data field总和做计算。

②将属性设为Group 或 All将会使报表在组和报表层次(group or report level)打印运行的总和。

When used with Groups this property should only be set when SummaryType is GrandTotal or PageTotal, otherwise it should be set to None.

 4-7.SummaryType属性

①-1 Subtotal:组层次(group level),为每组重置

①-2 Grand total:报表层次(report level),所有记录被处理而不被重置

①-3 Page total:页层次(page level),为每页重置

①-4 page count:所有打印的页数

②如果一个像求和字段被放置在求和层次的头部(比如,page header上的page total,report header上的grand total),这个包含的块和下一个块将不会打印直到总和被计算了。在字段中使用求和函数后,对于这个字段的CanGrow和CanShrink属性将会失效。

转载于:https://www.cnblogs.com/niaomingjian/p/4724119.html

摘要 ActiveReports for .NET 是最畅销的ActiveReports 引擎和报表浏览器。其功能和灵活性与ActiveReports 2.0相同,并提供了完整的.NET环境下的代码集成。使用.NET 版的ActiveReports,你可以采用Visual Studio.NET 编辑器,用C#或Visual Basic .NET 语言编写报表代码,其中包含了ASP.NET 服务器控件,帮助您安装web客户端浏览器以及WinForms浏览器控件,以提供单页浏览,多页浏览,文本搜索,内容列表和定制工具栏等功能。 组件列表 技术特性 支持ASP.NET-ActiveReports在WebForms应用程序中通过使用ASP.NET 服务器控件来使用。这个控件支持分布式web报表,可使用HTML,ActiveX,.NET 和PDF浏览器。 完全代码集成-使用Microsoft Visual Studio.NET编辑器用C#或VB.NET编写报表的代码,非常灵活。 报表向导-报表向导帮助您开始创建使用集成设计器来定制的简单报表。 图片文件名 运用优势 最终用户报表设计器 终端用户设计器提供了向应用程序中添加报表设计器的功能,同时提供了最终用户报表编辑功能。 控件的方法和属性能方便的存储和加载报表布局,监测和控制设计环境,并可根据终端用户的需要定制外观。 与ASP.NET集成 Web浏览器控件为您提供了web上的快速浏览ActiveReports 以及打印功能,并具有ActiveX,Acrobat Reader HTML,EXCEL浏览器类型的属性。 RPX 文件HTTP处理器为您提供了在web服务器上轻松的放置报表的功能,并可使您的Internet用户采用HTML 或PDF进行浏览,而不需要编写任何代码。 编译的报表HTTP处理器提供了直接访问服务器的程序集中编译的ActiveReports,而不需要编写任何ASPX页面。 发布-容易部署 报表引擎是一个简单处理强名称程序集。程序集可以使用XCopy发布或放置于程序集全局存储器中(GAC)。 专业版包括HTTP 处理器和服务器并行web控件,用于ASP.NET 报表。 设计器-容易学习 与.NET 环境完全集成 熟悉的用户界面 支持C#和Visual Basic.NET 报表将作为您应用程序中的一部分进行编译,以加快处理速度,增强安全性,并且用户可以有选择地分别发布。 初学者报表向导和Microsoft Access 报表导入向导 设计器拥有第三方控件(图表控件,图像控件等)。 数据访问-容易连接 具有OLEDB和SqlClient报表数据源 具有灵活的xml数据源 绑定到Dataset,DataView,DataTable和任何IListSource 控件 数据源属性能在运行时修改,生成ad hoc(动态)报表 灵活的非绑定数据 预览和输出-容易显示 支持C#代码 小型部署程序集,适用于Internet 上使用 TOC/Bookmarks 超链接 输出过滤文件格式为RTF、PDF、EXCEL、HTML、TIFF 和文本文件。 开发环境 VB .NET/C# .NET/ASP.NET 支持平台 Windows2000/XP 电话 021-58549800 Email: tools@sh.grapecity.com http://www.grapecity.com/china
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值