您的位置:首页 > 其它

ActiveReports工作总结1——AR简介

2006-06-05 12:08 513 查看
ActiveReports(以下简称AR)是一款日本开发的报表打印组件,类似于vs2003自带的那个CrystalReports(即水晶报表,简称CR),虽然普及率没CR高,但是在很多对日项目中却普遍使用,而网上资料几乎都是CR,AR的中文资料不是很丰富。
最近一直在用AR,故对AR的使用也有一定经验,所以打算把这些经验总结一下,一方面自己总结巩固一下,一方面也给有这方面需要的朋友参考参考。文章可能有很多错误或不足之处,希望可以和大家一起讨论。

AR的使用其实和CR很像,有CR经验的朋友开发AR肯定会驾轻就熟。对于那些没有报表开发经验的朋友也不要紧,我们下面一步步来,先试着创建一个最简单的报表。

一,准备工作。

我的工作环境是vs2003+vb.net,以下例子就用这个环境,C#和vb.net没啥差别的。

首先,装vs2003,这是废话。

其次,装AR,似乎也是废话,vs2003自带CR,但却不带AR的,所以只能自己装。安装文件google一下,应该很好找,假如不知道下载哪个的话,我回家上传一个。

安装好AR之后,你可以在工具箱里看到多了一个控件Viewer,如图:



假如没有直接出现的话,可以添加一下,如图:



同时,在工程上添加一个新的Item时,你将会发现多了一个Item选项,这个就是AR的模版文件:



这里有必要解释下多出来的这2个咚咚是干嘛的。

1, 工具箱里的那个Viewer,是放在Form上的,可以理解为一个容器。

2, 那个新Item,是个rpx文件,是AR的模版,可以理解为需要放到容器里的实物。最终用户通过Form上的那个Viewer容器,看到AR模版的内容。

二,创建一个AR报表的简单流程。

a) 创建一个窗体frmShowAR,在这个form上add一个 Viewer控件Viewer1。



b) 创建一个AR模版ARSimpleExample



c) AR模版ARSimpleExample随便加几个textbox(工具箱里多了个ActiveReports板块,只有里面的这些控件,才可以放到AR模版上),这就是我们需要打印出来的东西



d) 在窗体frmShowAR中加入代码,使Viewer1显示AR模版ARSimpleExample

 

''' -----------------------------------------------------------------------------
''' <summary>
''' form load事件
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks>
''' form load時,把AR模版裝載到Viewer容器中去
''' </remarks>
''' <history>
''' [TonyGong] 6/5/2006 Created
''' </history>
''' -----------------------------------------------------------------------------
Private Sub frmShowAR_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Try
'創建AR模版實例
Dim rpt As New ARSimpleExample

'顯示AR模版
Me.Viewer1.Document = rpt.Document
rpt.Run()

Catch ex As Exception
MessageBox.Show(ex.ToString)
End Try
End Sub

e) 最后,运行程序,我们的第一张AR报表就这么诞生了。



这只是一个最最简单的例子,AR的功能还是很强大的,比如可以以dataset为数据源,设置AR模版;可以把报表导出成html,xls,pdf等。

整个AR的精华其实都在AR模版上,你们在AR模版上右击,view code,将发现AR模版其实是由一个.rpx文件和一个.vb文件(c#为.cs)组成的,这类似于asp.net中的代码分离技术,画面和代码分离。

在.vb文件中,你可以做很多控制,比如,画面(.rpx)上面有个显示日期的textbox控件,然后你可以在.vb中用代码获取当前日期,然后显示到.rpx上的控件中去。

这些内容,下篇再讲,今天先说到这里吧,希望能和大家一起探讨,共同进步。

本节代码下载:http://files.cnblogs.com/batoosai/SimpleExample.rar
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: