ActiveReport开发一

本文详细介绍如何利用ActiveReport在.NET环境下开发报表。通过逐步指南,介绍了安装过程、创建首个Web报表程序的方法,并展示了如何在网页中显示报表及必要的配置步骤。

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

ActiveReport .net下的一个出色的报表开发程序,虽然和水晶报表相比,名气不那么大,甚至有很多人不知道它的存在,但是并不妨碍它在.net报表开发中的出色表现,本文将一步一步地介绍如何使用它和VS2008开发.net报表。
 
1.         安装:
你可以从Data Dynamics的网站上下载最新的ActiveReport for .net 3.0 ,你可以免费使用,但是在生成的报表最下边有水印,不过不影响报表的整体美观。下载后直接安装就可以了。你也可以找破解包,安装完后会看到开始-程序菜单里的DataDynamics的目录,里面包括了,帮助,例子程序等。
2.         第一个Web表程序。
在安装完成后,启动VS2008,会看到启动界面上有ActiveReport的图标,进入后新建一个工程,并且给工程添加新文件,在文件类型中就可以看到ActiveReport文件的图标。给报表文件命名为ActiveReport1,确定后会弹出一个提示:你正在添加一个特殊格式的文件,要在网站中使用此类型,需将其放到app_code文件夹中,是否将其放入App_Code中,点击确定,则在App_Code看到有一个ActiveReport1.cs文件,这个就是报表文件了。打开文件,就是报表的CS文件,在此注明,大家不要被此文件给愚弄了,说实话我在此迷惑不解了好久,一直在找它的设计文件,但是一直无果,所以一直费劲的在敲代码来布局,但在一个偶然的机会,才发现右键,视图设计器,就可以打开设计页面,当时我气的差点吐血,我可是重装了N次呀,这才是众里寻它千百度,蓦然回首那人却在灯火阑珊处,而前人没有一个人提到,为了大家少走弯路,所以在此强调一下。下面我们接着言归正传,在设计页面可以看到三部分,PageHeader(表头),Detail(明细),PageFooter(表尾)。打开工具箱,给Detail部分随便添加一个Label
下面就要显示这个报表了,在工程中添加一个web窗体,在窗体上写上以
<object id="arv" codebase="arview2.cab#version=-1,-1,-1,-1" height="100%" width="100%" classid="clsid:8569D715-FF88-44BA-8D1D-AD3E59543DDE" viewastext>
    <param name="_ExtentX" value="26141">
    <param name="_ExtentY" value="11959">
   </object>
窗体上还要写以下代码:此处是一个再次load事件,应该是内部调用使用的。
<script language="vbscript">
<!--
   sub arv_ControlLoaded()
       arv.DataPath = "ActiveXViewer.aspx?ReturnReport=1"
       
   end sub
   -->
   </script>
   我们在.cs文件中写入
string sReturnReport = this.Page.Request.QueryString["ReturnReport"];
  if ( (sReturnReport != null) && (sReturnReport.Trim().Length != 0) )
  {
      this.Page.Response.Buffer = true;
   ActiveReport3 rpt = null;
   try
   {
               //这两句话是重点
               rpt = new ProductReport(myArray);
               rpt.Run(false);     
   }
   catch (DataDynamics.ActiveReports.ReportException eRunReport)
   {
    this.Trace.Warn("Report failed to run:/n" + eRunReport.ToString());
   }
     MemoryStream outStream = new MemoryStream();
      rpt.Document.Save(outStream, DataDynamics.ActiveReports.Document.RdfFormat.AR20);
    outStream.Seek(0, SeekOrigin.Begin);
    byte[] bytes = new byte[outStream.Length];
     outStream.Read(bytes, 0, (int)outStream.Length);
     this.Page.Response.ClearContent();
   this.Page.Response.ClearHeaders();
     this.Page.Response.BinaryWrite(bytes);
      this.Page.Response.End();
  }
然后运行,就可以看到在Viewer控件中显示报表了
3.       还要注意的是,在web方式下,需要在web.config文件中添加下面这段:
<httpHandlers>
<addverb="*"path="*.rpx"type="DataDynamics.ActiveReports.Web.Handlers.RpxHandler, ActiveReports.Web, Version=4.2.1.1238, Culture=neutral, PublicKeyToken=cc4967777c49a3ff"/>
<addverb="*"path="*.ActiveReport"type="DataDynamics.ActiveReports.Web.Handlers.CompiledReportHandler, ActiveReports.Web, Version=4.2.1.1238, Culture=neutral, PublicKeyToken=cc4967777c49a3ff"/>
<addverb="*"path="*.ArCacheItem"type="DataDynamics.ActiveReports.Web.Handlers.WebCacheAccessHandler, ActiveReports.Web, Version=4.2.1.1238, Culture=neutral, PublicKeyToken=cc4967777c49a3ff"/>
</httpHandlers>
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值