惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

云风的 BLOG
云风的 BLOG
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
博客园 - 叶小钗
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
V
V2EX
酷 壳 – CoolShell
酷 壳 – CoolShell
月光博客
月光博客
人人都是产品经理
人人都是产品经理
宝玉的分享
宝玉的分享
博客园 - 司徒正美
WordPress大学
WordPress大学
Microsoft Azure Blog
Microsoft Azure Blog
罗磊的独立博客
Vercel News
Vercel News
T
The Blog of Author Tim Ferriss
T
Tailwind CSS Blog
A
About on SuperTechFans
Apple Machine Learning Research
Apple Machine Learning Research
L
LangChain Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
V
Visual Studio Blog
S
SegmentFault 最新的问题
Google DeepMind News
Google DeepMind News
博客园 - 聂微东

博客园 - Tony.Gong

新项目中的CC.Net每日编译环境 ActiveReports工作总结12——用Designer控件实现用户自定义报表印刷 ActiveReports工作总结11——麻烦的线线框框 ActiveReports工作总结10——完整的一张成绩一览帐票 ActiveReports工作总结9——打印参数设置 ActiveReports工作总结8——用代码控制布局 ActiveReports工作总结7——常用一览表印刷 今天还有多少人在上班啊? ActiveReports工作总结6——使用子报表 ActiveReports工作总结5——常用分栏帐票印刷 ActiveReports工作总结3——换列打印 公司现有产品数据层切换的随想 .net发送邮件的一些技巧 ActiveReports工作总结2——数据源绑定 ActiveReports工作总结1——AR简介 NUnit学习笔记4--单元测试和项目结合的几种方法 成功升级成老爸。。。。 马上要当老爸了。。。。。 委托与事件学习笔记1---什么是委托?
ActiveReports工作总结4——换页打印
Tony.Gong · 2007-02-15 · via 博客园 - Tony.Gong

AR换页打印

环境:

vs2005+ActiveReportsNet2

AR下载地址:ftp://ftp.datadynamics.com/

 
本节目标:

有如下数据源
最终希望打印成如下(按班级进行分页):

1,先准备如下数据:

2,创建一个AR模版,大致布局与控件如下图:

GroupHeader中放入一个TextBoxCurrentClass,该控件希望显示当前页打印的ClassDataField邦定字段”Class”

Detail section 中放3Textbox,分别邦定字段”Class”,”ID””Name”(修改他们的DataField属性)

PageFooter2TextBox,分别用来显示当前page和总page.

3,在formload事件中编写如下代码,把数据源传给模版,并显示模版:

    Private Sub Form1_Load(ByVal sender As ObjectByVal e As System.EventArgs) Handles Me.LoadDim conn As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=test.mdb;Persist Security Info=False"Dim cmd As String = "Select * from table1 order by ID"Dim adapter As New OleDbDataAdapter(cmd, conn)Dim ds As New DataSet

        adapter.Fill(ds)

Dim rpt As New rpt1

        rpt.DataSource 

= ds.Tables(0)

        rpt.Run()

Me.Viewer1.Document = rpt.DocumentEnd Sub

 

4,运行程序,帐票将被打印出来。

5,恩,帐票还没有按Class分页,看过前面一篇换列的文章的话,应该很容易就想到怎么换页了。

ok,点中Groupheader1,修改如下属性:

DataField:改成Class,恩,我们是根据Class字段换页的,一旦数据源中的Class发生了改变,马上就强制换页。

NewPage:改成BeforeBeforeA班变成B班之前换页;AfterA班变成B班之后换页。用After的话,B班的第一条纪录还是会打印在当前也,大家可以试试)

6ok,御览看看效果吧。

7,大致完成了,PageFooter中的页码还没完成

修改这2textbox的属性:

CurrentPage:

TotalPage:

这是AR的统计功能,比如可以对当前页面上的人数做统计,对当前页面上的金额作统计,这个后面再讲。

这里就用到了简单的PageCount统计。

第一个TextboxSummaryRunning设置成All,是指每打印一张page,就统计一下当前的pagesum

第二个Textbox设置成none,就是只统计到最后一页的pagesum

8,最后的结果,目标达成了


本篇代码下载:https://files.cnblogs.com/batoosai/SimpleExample4.rar