问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

水晶报表打印动态列

发布网友 发布时间:2022-04-28 11:16

我来回答

2个回答

热心网友 时间:2022-04-09 10:55

Asp.Net中使用水晶报表

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

  这篇文章教你如何在.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操作系统的原因。

热心网友 时间:2022-04-09 12:13

建议你看一下你电脑和软件的设置,你可以参考一下finereport的打印设置,总的来说finereport的打印这一块还是做的不错的,不管是产品,还是文档。

页面设置:页面设置中所设的横纵向、纸张大小、页边距等是报表在客户端浏览器中预览的效果,与打印效果无关,页面设置属性可参考页面设置文档;
打印首选项:打印机首选项中所设的横纵向、纸张大小决定了最终打印效果。
FineReport中只有Applet打印与PDF打印支持将页面设置传入到打印首选项中,即在打印时打印机会按照页面设置进行打印,而Flash打印不支持将页面设置传递给打印机首选项,必须手动设置纸张大小及方向。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
为什么来大姨妈胸会胀 少儿学什么舞蹈 青年学什么舞蹈好 成年人学什么舞蹈 福州企业最低工资标准 2013年厦门的底薪是多少 生产要素的需求有哪些性质 生产要素的需求有何特点? 什么是生产要素需求 微观经济学要素需求什么是条件要素需求?它和要素需求有什么不同?_百度... 我想在淘宝上卖安全套怎么办 如何设置水晶报表的背景颜色 本地包上传到linux上面,zip包解压过后文件后缀多了一个* ? 开网店卖避孕套怎么样? 水晶报表sap crystal reports 头部每页显示 避孕套从哪进货,我是固安的 在水晶报表中插入多个子报表后,产生多页时,如何设置表头?? 为什么阿里巴巴批发的避孕套那么便宜啊!!! Winform中怎么使用水晶报表? 在天猫的杜蕾斯旗舰店买的避孕套到底是不是正品? 水晶报表如何让页眉和详细资料对应 Linux 如何给已压缩文件改名 ZIP格式的 求详细,本人刚学 微商避孕套货源怎么找 请问水晶报表在 vc6.0中如何使用? 我想在网上卖避孕套从那里淘货源最好正品 在LINUX下解压ZIP文件后,怎么并重命名ZIP解压出来的文件 C#手动水晶报表怎么做 那里有避孕套保健品进货点 在MFC中如何使用水晶报表 避孕套货源 我有一些避孕套,想让超市帮我代销,怎么和他们谈 sql,水晶报表,多标题 急急急急!!!!如果在linux中有一个包,解压后直接就是一些可执行文件,那么这些文件的名字是不是就是 Linux中怎么修改一个文件夹下的Makefile文件 水晶报表中字体公式如何设置当字段中的中文字符用‘宋体’,数字及字母用‘Times New Roman’ 水晶报表的行数据和列数据的动态显示 卸妆膏的使用方法 卸妆膏的正确使用方法是什么? 卸妆膏怎么用? 天之花洁颜霜怎么用? rmk卸妆膏怎么用 rmk卸妆膏使用方法 卸妆洁面霜怎么用 洁颜霜是洗脸的还是什么 EVELOM经典洁颜霜的按摩手法 洁颜膏可以每天都用吗?我用了感觉皮肤挺干净挺好的。每天擦防晒隔离,要每天用这个卸妆吗? 如何卸妆?用什么好呢? 柏莱雅的洁颜膏是干嘛的 洁颜霜和洁面乳有什么区别 听说EVELOM的卸妆膏好用,用起来是什么感觉? 一天需要使用几次谷汀的洁颜霜呢?