`
luliangok
  • 浏览: 816922 次
文章分类
社区版块
存档分类
最新评论

VS.Net中的水晶报表的应用

 
阅读更多

VS.Net中的水晶报表(Crystal Reports)


  这篇文章教你如何在.Net Web应用中使用水晶报表,也可以让你在学习过程中少走一些弯路

。为了得到最好的效果,读者最好需要有一些基础的Asp.Net访问数据库的知识以及使用VS.Net的开发经验。

  简介

  水晶报表可以由很多的方法得到,其中一个就是使用VS.Net来创建,它提供了非常丰富模型以使我们能够在运行时操作属性和方法。如果你正在使用VS.Net开发.Net程序,那么你就不需要再安装其它软件了,因为他已经内嵌在VS.Net中了。

  优点:

  VS.Net水晶报表有下面一些主要的优点:

快速的报表开发

能够导出成为复杂的交互性图表

可以与其它控件一起在WebForm中使用

能够动态地将报表导出成为.pdf,.doc,xls,html,rtf等多种格式

  结构:

  一些组件组成了水晶报表的二层结构,需要的Web应用有:

  客户端 :

  客户端仅需要一个可以访问嵌入aspx页面报表的游览器就可以了

  服务器 :

  水晶报表引擎(Crystal Report Engine (CREngine.dll))

  通过它可以完成一些任务,如在报告文件中合并数据,转换报告为其它格式等。也正是因为报告引擎的作用,才可以将Asp.Net中的水晶报表转换成为普通HTML格式

  水晶报表设计器(Crystal Report Designer (CRDesigner.dll))

  水晶报表就是在设计器中创建的,在设计器中你可以设计标题,插入数据,公式,图表,子报表等。

  .rpt报表文件

  执行报表中的第一步就是在水晶报表设计器接口创建此报表,在默认安装中微软已经提供了一些现成的.rpt例子。

  Data Source

  .rpt文件取得数据库的方法取决于你方法的选择,你能选择让水晶报表自己选择数据而不使用任何代码或者也可以选择手动的组装DataSet,然后再将其传送到报表文件。

  水晶报表查看控件(Crystal Report Viewer web form Control (CRWebFormViewer.dll))

  水晶报表查看控件是一个WebForm控件,可以将它看成是一个在.aspx页面中存放报表的容器。 注意:在一些复杂的操作中,报表服务器与Web服务器可能不在同一物理主机上,Web服务器将HTTP请求传送到报表服务器上去。水晶报表也可以当做WebService来执行。

  执行模式

  水晶报表取数据可以使用下面的方法实现:

  Pull 模式:

  被请求时,水晶报表直接根据指定的驱动连接数据库然后组装这些数据。

  Push 模式 :

  此时开发表不得不自己编写代码连接数据并组装DataSet,同时将它传送至报表。在些这种情况下,通过使用连接共享以及限制记录集合的大小,可以使用报表性能最大化。

  报表类型:

  水晶报表设计器能够直接包含报表至工程也能够使用独立的报表对象。

  Strongly-typed 报表 :

  当你将报表文件加入到项目中去时,它就变成了一个了“ strongly-typed“报表。在这些情况下,你将拥有直接创建报表的对象的权力,这将减少一些代码并且能够提供一些性能。

  Un-Typed 报表 :

  这里的报表并不直接包含在项目中,因此称为‘un-typed’ 报表。在这种情况下,你不得不使用水晶报表的”ReportDocuemt“对象建立一个实例,并且”手动“地凋用报表。

  其它注意事项

  尽管水晶报表查看器拥有一些很酷的功能,如缩放、页面导航等。但是他不提供打印功能,你不得不调用游览器的打印功能。

  VS.Net中的水晶报表如果没有注册,那么它只能使用30次,30次后,”保存“功能就不能再使用了。为了避免这个,你不是不在 http://www.crystaldecisions.com/这里注册此产品。 (好像不是这样子的,不注册也好像能用很长的时间,只是不能提供支持)

  默认安装的水晶报表只能支持5个用户,为了支持更多的用户,你不得不在

http://www.crystaldecisions.com/中购买许可证。

让我们感受一下----在Asp.net中使用一个现成的水晶报表文件

  让我们先感受一下在WebForm中使用水晶报表的感觉。   

1) 从WebForm工具栏中拖动水晶报表查看器控件(Crystal Report Viewer)至.aspx页面中。


 

  2) 调出水晶报表查看器控件的属性窗口  

  3) 点击[...]按钮查看"Data Binding"属性,并弹出了DataBinding窗口。

  4) 从左边的"Bindable属性”区中选择“Report Source”

  5) 选中"自定义绑定表达式"单选按钮,在右边的底部的窗口中指定.rpt文件的文件名和路径,例如:"C://Program Files//Microsoft Visual Studio.NET//Crystal Reports//Samples//Reports//General Business//World Sales Report.rpt",然后”确定“

  注意:文件”World Sales Report.rpt“文件是在VS.Net安装时创建的。如果你在安装过程中指定了其它目录,此时你最好确认一下路径的正确性。

  上面的步骤中实际上是插入了下面这些代码至Asp.Net文件中:

<%@ Register TagPrefix="cr" Namespace="CrystalDecisions.Web" Assembly="CrystalDecisions.Web" %>


  以及:

<CR:CRYSTALREPORTVIEWER>
id="CrystalReportViewer1"
runat="server" Width="350px" Height="50px"
ReportSource=' <%# "C://Program Files//Microsoft Visual Studio.NET//Crystal Reports//Samples//Reports//General Business//World Sales Report.rpt" %>'>
</CR:CRYSTALREPORTVIEWER>


   注意:在我的VS.Net正式版中自动生成的代码中ReportSource产生的样式不是这样子的,它是:

ReportSource=" <%# C:/xxxxx/xxx.rpt %>"


  这样是错误的,会出现错误信息,有两处错误:

  • DataBind中要有双引号,因此外部只能用单引号
  • 目录分隔符号不能使用"/",必须使用"//"

  必须按照使用本文介绍的格式来手动修改,这也算是VS.Net的一个Bug吧。

  6) 在Page_Load方法中调用DataBind方法。(代码为VB.Net)

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)

DataBind()

End Sub


  7)保存并编译你的页面。 现在,你就有一个内嵌水晶报表的WebForm页面了。

  注意:际开发中,一开始会出现无法访问inetsrv目录的错误,解决的办法是改变其目录的安全属性,使User用户有可写的权限。.Net系统自已给出的解决方法是没有用的,也可能是我使用的是Windows.Net操作系统的原因。

分享到:
评论

相关推荐

    VS.NET2005水晶报表使用方法 .doc

    VS.NET2005中的水晶报表是一个强大的报表设计和展示工具,它被集成在Microsoft Visual Studio 2005环境中,使得开发人员能够方便地创建和管理报表。水晶报表提供了两种主要的工作模式:拉模式(PULL)和推模式(PUSH...

    .net中水晶报表的使用视频教程

    《.NET中水晶报表的使用视频教程》是一个针对.NET开发者,特别是那些希望深入了解水晶报表(Crystal Reports)功能和应用的教程。水晶报表是SAP公司的一款强大报告工具,广泛用于生成各类业务报告,如销售报告、财务...

    VB.NET水晶报表的制作 源代码

    通过学习和实践这个VB.NET水晶报表的制作源代码,开发者可以掌握如何在自己的应用程序中集成报表功能,为用户提供直观的数据可视化和分析工具。水晶报表的灵活性和强大功能使得它在各种规模的项目中都有广泛应用。

    vs.net2005水晶报表

    水晶报表是一款功能强大的报表设计工具,广泛应用于多种开发环境中,包括Microsoft Visual Studio .NET 2005 (简称VS.NET 2005)。本文档旨在详细解释如何在VS.NET 2005中使用C#语言进行WinForm开发时集成和利用水晶...

    VS.Net水晶报表

    VS.NET水晶报表是一种在Microsoft Visual Studio .NET环境中用于创建、设计和展示报表的强大工具。它由Business Objects公司(现为SAP的一部分)开发,广泛应用于各类企业级应用中,为开发者提供灵活的数据可视化和...

    VS.NET2005水晶报表使用方法

    在VS.NET 2005中,开发Web应用程序时,水晶报表可以通过ASP.NET Web Forms控件来使用。以下是一般步骤: 1. **安装水晶报表**:首先确保已安装了水晶报表的SDK,它是Visual Studio 2005的一部分,或者可以单独下载...

    一个很不错的.net版水晶报表控件

    总结来说,这个资源提供的是一种集成Flash展示的.NET水晶报表控件,结合了ComponentArt的WebChart组件,提供了丰富的数据可视化和交互性功能。对于.NET开发者来说,它可以极大地提升报表设计和展示的效率,为用户...

    vb.net+水晶报表示例

    最后,当用户运行VB.NET应用程序时,通过调用相关代码,水晶报表会根据指定的数据生成报表并显示在CrystalReportViewer中。 总的来说,VB.NET结合水晶报表为开发者提供了强大的报表设计和展示功能。通过熟练掌握...

    asp.net MVC 水晶报表 Using Crystal Report in ASP.net MVC

    结合水晶报表(Crystal Reports),我们可以为ASP.NET MVC应用添加强大的数据可视化功能,生成复杂的业务报告。 水晶报表是一种广泛使用的商业智能工具,允许开发者创建、设计和展示结构化的数据报告。它支持多种...

    asp.net动态水晶报表实现代码

    在ASP.NET开发中,水晶报表(Crystal Reports)是一款强大的报表设计工具,广泛应用于企业级应用系统,用于生成各种复杂的报表。动态水晶报表是指在运行时根据用户需求或数据源变化生成的报表,提供了灵活的数据展示...

    asp.net web 水晶报表的使用大全

    ASP.NET Web 应用程序中的水晶报表(Crystal Reports)是一种强大的报表工具,广泛用于生成、设计和展示数据报告。在本篇文章中,我们将深入探讨如何在ASP.NET Web环境中使用水晶报表,结合Visual Studio 2005(VS...

    Asp.Net中使用水晶报表

    在我们对VS.Net中的水晶报表(Crystal Reports)进行研究之前,我和我朋友对如何将这个复杂的东东加入我们的Web应用有着非常的好奇心。一周以后,在阅读了大量的“HOWTO”文档之后,我们成功地将一些简单的报告加入...

    CrystalReports2.0--Asp.net2.0水晶报表(CrystalReports)实例源码大全(C#).rar

    水晶报表(Crystal Reports)是SAP公司的一款强大的报告生成工具,尤其在.NET框架下,与Asp.net2.0的结合使得它在企业级应用开发中占据了重要地位。本压缩包文件"CrystalReports2.0--Asp.net2.0水晶报表(Crystal...

    ASP.NET中水晶报表的使用

    水晶报表是用于生成复杂报表和数据分析的强大工具,尤其在ASP.NET环境中,它能够方便地与Web应用程序集成。在本文中,我们将深入探讨如何在ASP.NET中有效地使用水晶报表,包括其优势、组件结构、执行模式以及报表...

    VB.NET 2005 水晶报表实例

    在VB.NET 2005中,水晶报表(Crystal Reports)是一种强大的报表设计工具,它允许开发者创建复杂的、数据驱动的报表,适用于多种数据源。本实例将详细讲解如何在VB.NET环境中集成并使用水晶报表控件来实现数据的可视...

    VB.Net中的水晶报表的应用

     水晶报表可以由很多的方法得到,其中一个就是使用VS.Net来创建,它提供了非常丰富模型以使我们能够在运行时操作属性和方法。如果你正在使用VS.Net开发.Net程序,那么你就不需要再安装其它软件了,因为他已经内嵌在...

    VB.net 将水晶报表导出成pdf,word,excel等制定文件

    在VB.NET中,水晶报表(Crystal Reports)是一个强大的报表设计工具,它允许开发者创建复杂的报表并集成到应用程序中。这个程序实例重点展示了如何利用Crystal Reports的API将报表导出为PDF、Word和Excel等常见文件...

    Asp.net2.0水晶报表实例

    综上所述,Asp.NET 2.0 水晶报表实例旨在提供一个实践平台,让开发者掌握如何在Web应用程序中集成和使用水晶报表,从而创建富有洞察力且易于使用的报表系统。通过研究提供的示例和文档,开发者可以深入了解水晶报表...

    如何在vs.net上面部署水晶报表

    在Visual Studio .NET (VS.NET) 上部署水晶报表(Crystal Reports)是一项常见的任务,尤其对于开发企业级应用程序的开发者来说。水晶报表是一款强大的报表设计工具,可以用来创建复杂的报告,包括从各种数据源获取...

Global site tag (gtag.js) - Google Analytics