水晶报表操作WebForm
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2) 在”Crystal Report 库”中选择”作为空白报表“单选按钮,最后单击“确定“。
3)这里将弹出水晶报表设计器。
4) 右击报表中的”详细资料区”,选择“数据库”->“添加/删除数据库..." 5) 在弹出的”数据库专家“中,扩展”OLE DB(ADO)“选项,此时会弹出另外一个”OLE DB(ADO)“窗 口。 6) 在 "OLE DB (ADO)" 弹出窗口中,选择 "Microsoft OLE DB Provider for SQL Server" 然后 "Next"
DataBind() End Sub 7)保存并编译你的页面。 现在,你就有一个内嵌水晶报表的WebForm页面了。
注意:实际开发中,一开始会出现无法访问inetsrv目录的错误,解决的办法是改变其目录的安全属性,
使User用户有可写的权限。飞刀我发现.Net系统自已给出的解决方法是没有用的,也可能是我使用的是
得不调用游览器的打印功能。
-
VS.Net中的水晶报表如果没有注册,那么它只能使用30次,30次后,”保存“功能就不能再使
用了。为了避免这个,你不是不在 http://www.crystaldecisions.com/这里注册此产品。 (好像不是这样
子的,不注册也好像能用很长的时间,只是不能提供支持)
分区 报表 的第 1 页
报表类型:
水晶报表设计器能够直接包含报表至工程源自文库能够使用独立的报表对象。
- Strongly-typed 报表 :
当你将报表文件加入到项目中去时,它就变成了一个了“ strongly-typed“报表。在这些情况下,你将拥
有直接创建报表的对象的权力,这将减少一些代码并且能够提供一些性能。
8) 使用PULL模式下的方法,建立一个WebForm 建立一个Crystal Report Viewer 控件 9) 建立一个Crystal Report Viewer 控件,并设定其属性,此处与PULL模式下是一致的。 Code Behind 代码: 10) 在Page_Load方法中使用下面的子函数: VB.Net代码:
7) 指定连接的信息 服务器 : ASPCN (您的机器是什么名字就写什么) 用户 ID: sa 密码: 数据库 : Pubs 8) 单击”Next“,最后单击”Finish“按钮。 9) 这时你就能在”数据库专家“窗口中看到我们选择的数据库。 10) 扩展”Pubs“数据库,扩展”表“,选择”Stores“表并将其加到”选定的表“区中,单击”OK"按 钮。
水晶报表操作WebForm
2010年8月13日 10:46
编程 2009-02-20 15:39:36 阅读440 评论0 字号:大中小 // 朋友推荐说挺有用,没整理,原篇转贴 以下内容为程序代码: 在我们对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应用有: 客户端 :
-
默认安装的水晶报表只能支持5个用户,为了支持更多的用户,你不得不在
http://www.crystaldecisions.com/中购买许可证。
让我们感受一下----在Asp.net中使用一个现成的水晶报表文件 1) 从WebForm工具栏中拖动水晶报表查看器控件(Crystal Report Viewer)至.aspx页面中。
ReportSource=''>
注意:在飞刀我的VS.Net正式版中自动生成的代码中ReportSource产生的样式不是这样子的,它是: ReportSource=""
这样是错误的,会出现错误信息,有两处错误:
必须按照使用本文介绍的格式来手动修改,这也算是VS.Net的一个Bug吧。
6) 在Page_Load方法中调用DataBind方法。(代码为VB.Net) Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
2) 从“服务器资源管理器”中的“SQL Server”中拖放“Stores”表(位于PUBS数据库中)。
3) 此时在数据集中就会有一个Stores表的结构图。
- .xsd文件中仅仅包含一个结构图,但是不会有任何数据在里面。 创建 .rpt 文件 : 4) 使用上面的介绍过的方法创建此文件,唯一的不同就是使用数据集来代替前面的直接连接数据。 5)建立.rpt文件之后,右击“详细资料”-->"添加/删除数据库“ 6) 在”数据库专家“窗口中,展开”项目数据“(代替以前的OleDb),展开“ADO.Net数据 集”--"DataSet1“,选择”Stores“表。 7) 将”Stores"表添加到“选定的表”中,点击“OK”
- Un-Typed 报表 :
这里的报表并不直接包含在项目中,因此称为'un-typed’ 报表。在这种情况下,你不得不使用水晶报
表的”ReportDocuemt“对象建立一个实例,并且”手动“地凋用报表。
其它注意事项
- 尽管水晶报表查看器拥有一些很酷的功能,如缩放、页面导航等。但是他不提供打印功能,你不
客户端仅需要一个可以访问嵌入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,同时将它传送至报表。在些这种情况下,通 过使用连接共享以及限制记录集合的大小,可以使用报表性能最大化。
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",然后”确定“
11) 现在在”字段资源浏览器“中就会在左边”数据库字段“区中显示你选择的表,以及表中的字段。 12) 拖放需要的字段进入报表的”详细资料“区。字段名将会自动出现在”页眉“区。如果你想修改头 部文字,则可以右击”页眉“区中的文字,选择”编辑文本对象“选项并进行编辑。
13) 保存,这样我们就有了一个水晶报表文件。 创建 CrystalReportViewer 控件 14) 回到前面的WebForm中,拖放一个Crystal Report Viewer控件到页面中去。 15) 调出Crystal Report Viewer控件的属性窗口,选择“DataBindings"区点击[...] 16) ”Crystal Report Viewer 数据绑定窗口”中,在右边的“可绑定属性”中选择”ReportSource“, 并选择右下角的“自定义绑定表达式”中指定.rpt文件路径。 17) 此时你能够从Crystal Report Viewer 控件中看到使用一些虚拟数据组成的报表文件的预览。 注意:在上面的例子中,CrystalReportViewer可以在设计时直接调用真实的数据,因为此时数据已经 保存。在这种情况下,设计时当没有保存数据时,他是不能显示数据的。取而代这的是显示一些虚拟的 数据,只有在执行时才会选取真实的数据。 Code Behind 程序设计 18) 在Page_Load方法中调用DataBind方法。 执行你的程序 19) 创建并运行你的程序!
您现在就可以直接在Web页面中使用水晶报表内置的一些功能,如页面导航,缩放等。
分区 报表 的第 3 页
Asp.Net中使用水晶报表(下) www.dotnet8.com 2002-9-6 DotNet吧 [HTML]我们采用下面的几步使用Push模式执行水晶报表: 1. 设计一个DataSet 2. 创建一个.rpt文件同时将其指定给上一步建立的DataSet。 3. 在aspx页面中拖放一个CrystalReportViewer控件同时将其与前面的rpt文件建立联系。 4. 在代码中访问数据库并把数据存入DataSet 5. 调用DataBind方法。 设计一个DataSet 1) 右击“解决方案浏览器”,选择“添加”--“添加新项”-->“数据集”
注意:文件”World Sales Report.rpt“文件是在VS.Net安装时创建的。如果你在安装过程中指定了其它 目录,此时你最好确认一下路径的正确性。 上面的步骤中实际上是插入了下面这些代码至Asp.Net文件中:
以及:
id="CrystalReportViewer1" runat="server" Width="350px" Height="50px"
Windows.Net操作系统的原因。
分区 报表 的第 2 页
Asp.Net中使用水晶报表(中) www.dotnet8.com 2002-9-6 DotNet吧 以下内容为程序代码: 使用Pull模式 我们将通过下面的这些步骤来通过Pull模式来执行水晶报表 1.首先创建rpt文件,并使用水晶报表设计接口设置一些必须的数据连接。 2.拖放一个 CrystalReportViewer控件至aspx页面,设置它的属性指定我们上一步创建的.rpt文件。 3. 在代码中调用DataBind方法。 创建 .rpt 文件: 1) 在右击”解决方案游览器“,在弹出的菜单中选择”添加“--”添加新项“-->”Crystal Report”
3)这里将弹出水晶报表设计器。
4) 右击报表中的”详细资料区”,选择“数据库”->“添加/删除数据库..." 5) 在弹出的”数据库专家“中,扩展”OLE DB(ADO)“选项,此时会弹出另外一个”OLE DB(ADO)“窗 口。 6) 在 "OLE DB (ADO)" 弹出窗口中,选择 "Microsoft OLE DB Provider for SQL Server" 然后 "Next"
DataBind() End Sub 7)保存并编译你的页面。 现在,你就有一个内嵌水晶报表的WebForm页面了。
注意:实际开发中,一开始会出现无法访问inetsrv目录的错误,解决的办法是改变其目录的安全属性,
使User用户有可写的权限。飞刀我发现.Net系统自已给出的解决方法是没有用的,也可能是我使用的是
得不调用游览器的打印功能。
-
VS.Net中的水晶报表如果没有注册,那么它只能使用30次,30次后,”保存“功能就不能再使
用了。为了避免这个,你不是不在 http://www.crystaldecisions.com/这里注册此产品。 (好像不是这样
子的,不注册也好像能用很长的时间,只是不能提供支持)
分区 报表 的第 1 页
报表类型:
水晶报表设计器能够直接包含报表至工程源自文库能够使用独立的报表对象。
- Strongly-typed 报表 :
当你将报表文件加入到项目中去时,它就变成了一个了“ strongly-typed“报表。在这些情况下,你将拥
有直接创建报表的对象的权力,这将减少一些代码并且能够提供一些性能。
8) 使用PULL模式下的方法,建立一个WebForm 建立一个Crystal Report Viewer 控件 9) 建立一个Crystal Report Viewer 控件,并设定其属性,此处与PULL模式下是一致的。 Code Behind 代码: 10) 在Page_Load方法中使用下面的子函数: VB.Net代码:
7) 指定连接的信息 服务器 : ASPCN (您的机器是什么名字就写什么) 用户 ID: sa 密码: 数据库 : Pubs 8) 单击”Next“,最后单击”Finish“按钮。 9) 这时你就能在”数据库专家“窗口中看到我们选择的数据库。 10) 扩展”Pubs“数据库,扩展”表“,选择”Stores“表并将其加到”选定的表“区中,单击”OK"按 钮。
水晶报表操作WebForm
2010年8月13日 10:46
编程 2009-02-20 15:39:36 阅读440 评论0 字号:大中小 // 朋友推荐说挺有用,没整理,原篇转贴 以下内容为程序代码: 在我们对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应用有: 客户端 :
-
默认安装的水晶报表只能支持5个用户,为了支持更多的用户,你不得不在
http://www.crystaldecisions.com/中购买许可证。
让我们感受一下----在Asp.net中使用一个现成的水晶报表文件 1) 从WebForm工具栏中拖动水晶报表查看器控件(Crystal Report Viewer)至.aspx页面中。
ReportSource=''>
注意:在飞刀我的VS.Net正式版中自动生成的代码中ReportSource产生的样式不是这样子的,它是: ReportSource=""
这样是错误的,会出现错误信息,有两处错误:
必须按照使用本文介绍的格式来手动修改,这也算是VS.Net的一个Bug吧。
6) 在Page_Load方法中调用DataBind方法。(代码为VB.Net) Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
2) 从“服务器资源管理器”中的“SQL Server”中拖放“Stores”表(位于PUBS数据库中)。
3) 此时在数据集中就会有一个Stores表的结构图。
- .xsd文件中仅仅包含一个结构图,但是不会有任何数据在里面。 创建 .rpt 文件 : 4) 使用上面的介绍过的方法创建此文件,唯一的不同就是使用数据集来代替前面的直接连接数据。 5)建立.rpt文件之后,右击“详细资料”-->"添加/删除数据库“ 6) 在”数据库专家“窗口中,展开”项目数据“(代替以前的OleDb),展开“ADO.Net数据 集”--"DataSet1“,选择”Stores“表。 7) 将”Stores"表添加到“选定的表”中,点击“OK”
- Un-Typed 报表 :
这里的报表并不直接包含在项目中,因此称为'un-typed’ 报表。在这种情况下,你不得不使用水晶报
表的”ReportDocuemt“对象建立一个实例,并且”手动“地凋用报表。
其它注意事项
- 尽管水晶报表查看器拥有一些很酷的功能,如缩放、页面导航等。但是他不提供打印功能,你不
客户端仅需要一个可以访问嵌入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,同时将它传送至报表。在些这种情况下,通 过使用连接共享以及限制记录集合的大小,可以使用报表性能最大化。
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",然后”确定“
11) 现在在”字段资源浏览器“中就会在左边”数据库字段“区中显示你选择的表,以及表中的字段。 12) 拖放需要的字段进入报表的”详细资料“区。字段名将会自动出现在”页眉“区。如果你想修改头 部文字,则可以右击”页眉“区中的文字,选择”编辑文本对象“选项并进行编辑。
13) 保存,这样我们就有了一个水晶报表文件。 创建 CrystalReportViewer 控件 14) 回到前面的WebForm中,拖放一个Crystal Report Viewer控件到页面中去。 15) 调出Crystal Report Viewer控件的属性窗口,选择“DataBindings"区点击[...] 16) ”Crystal Report Viewer 数据绑定窗口”中,在右边的“可绑定属性”中选择”ReportSource“, 并选择右下角的“自定义绑定表达式”中指定.rpt文件路径。 17) 此时你能够从Crystal Report Viewer 控件中看到使用一些虚拟数据组成的报表文件的预览。 注意:在上面的例子中,CrystalReportViewer可以在设计时直接调用真实的数据,因为此时数据已经 保存。在这种情况下,设计时当没有保存数据时,他是不能显示数据的。取而代这的是显示一些虚拟的 数据,只有在执行时才会选取真实的数据。 Code Behind 程序设计 18) 在Page_Load方法中调用DataBind方法。 执行你的程序 19) 创建并运行你的程序!
您现在就可以直接在Web页面中使用水晶报表内置的一些功能,如页面导航,缩放等。
分区 报表 的第 3 页
Asp.Net中使用水晶报表(下) www.dotnet8.com 2002-9-6 DotNet吧 [HTML]我们采用下面的几步使用Push模式执行水晶报表: 1. 设计一个DataSet 2. 创建一个.rpt文件同时将其指定给上一步建立的DataSet。 3. 在aspx页面中拖放一个CrystalReportViewer控件同时将其与前面的rpt文件建立联系。 4. 在代码中访问数据库并把数据存入DataSet 5. 调用DataBind方法。 设计一个DataSet 1) 右击“解决方案浏览器”,选择“添加”--“添加新项”-->“数据集”
注意:文件”World Sales Report.rpt“文件是在VS.Net安装时创建的。如果你在安装过程中指定了其它 目录,此时你最好确认一下路径的正确性。 上面的步骤中实际上是插入了下面这些代码至Asp.Net文件中:
以及:
id="CrystalReportViewer1" runat="server" Width="350px" Height="50px"
Windows.Net操作系统的原因。
分区 报表 的第 2 页
Asp.Net中使用水晶报表(中) www.dotnet8.com 2002-9-6 DotNet吧 以下内容为程序代码: 使用Pull模式 我们将通过下面的这些步骤来通过Pull模式来执行水晶报表 1.首先创建rpt文件,并使用水晶报表设计接口设置一些必须的数据连接。 2.拖放一个 CrystalReportViewer控件至aspx页面,设置它的属性指定我们上一步创建的.rpt文件。 3. 在代码中调用DataBind方法。 创建 .rpt 文件: 1) 在右击”解决方案游览器“,在弹出的菜单中选择”添加“--”添加新项“-->”Crystal Report”