Vs中水晶报表的应用.docx
- 文档编号:24591505
- 上传时间:2023-05-29
- 格式:DOCX
- 页数:12
- 大小:557.63KB
Vs中水晶报表的应用.docx
《Vs中水晶报表的应用.docx》由会员分享,可在线阅读,更多相关《Vs中水晶报表的应用.docx(12页珍藏版)》请在冰豆网上搜索。
Vs中水晶报表的应用
Vs2012中水晶报表的应用
(一)
杨永泉
vs2008开发工具中包含了水晶报表的开发组件,而从vs2010开始微软的开发工具就不再包含水晶报表的开发组件,为此在vs2010与vs2012中使用水晶报表就需要安装SAP的组件才能使用水晶报表。
一水晶报表forVs2010组件的下载
有网友杨明波提供了组件下载链接
需要者可以现在水晶报表组件安装包。
二组件安装
1下载完毕后可以得到一个290M的安装包,双击安装包即可进行安装,安装前请关闭VS2012开发工具。
2安装分为三个阶段,第一阶段是解压抽取文件,第二阶段是安装,第三阶段为删除安装文件。
前两个阶段运行较快,程序的交互性较好,在第三个阶段交互性差很费时,会给人系统死机的感受,不要着急等一段时间就会安装成功。
三组建安装后vs2012控件工具栏的变化
在组建安装后。
启动vs2012,在设计模式下打开一个web页面文件,会在控件工具栏中增加了报表设计分组。
如下图
四准备建立报表的数据源
用水晶报表制作报表和用其他的报表工具做报表一样首先我们要准备一个数据结构(制作报表要用到的),这个结构可以来源于数据库,也可以来源于.net的数据集。
制作报表.rpt文件提供的结构必须与最终提供报表数据的数据源结构相同,否则报表不能正常的显示。
本文以win7例说明配置数据源的过程。
1假定你在个人的机器上或是你公司的机器上已经装有sqlserver2005的数据库系统。
2熟悉odbc配置者可以跳过这部分。
进入控制面板-〉管理工具-〉数据源(ODBC)
点击添加按钮,选择sqlsever数据驱动程序,然后点击完成。
在Name栏输入数据源名称这里就叫做crystaltestDB(这个名字根据自己的需要定名称,如果你高兴命名为abc也未尝不可),然后选择装有sqlserver的服务器。
本人机器所在网络有多台机器上装有sqlserver所以有多台sqlserver服务器列表。
然后点击下一步。
输入sqlserver服务器的帐户及密码。
数据库管理系统的帐户为sa密码在安装时给设定的。
如果不知道,你可系问数据库管理员。
然后点击下一步,再选择你要选用的数据库。
在剩下的工作就是一路ok即可完成。
用了这么多的篇幅只完成了这样一件事,在odbc数据源有了个名叫crystaltestDB的数据源。
在连接数据源时将使用。
3两种数据连接方式
VS2012可以采用ODBC和MicrosoftSQLServer(SqlClient)两种方式与sqlserver2005连接,使用后者系统效率会高。
在设计.本节rpt文件时使用哪种连接方式都没关系(水晶报表采用的是推模式,关于模式将另外阐述)
五建立rpt报表文件
在vs解决方案管理其中右击鼠标,选择添加新项,然后选择CrystalReports,给rpt文件起个名,然后点击添加按钮。
系统将出现如下的窗口,选择第二项作为空白报表。
点击确定系统将出现类似如下报表设计窗口
将鼠标放置在报表设计窗口,然后右击鼠标选择数据库-〉数据库专家
系统出现数据表选择窗口
在数据表选择窗口中将用来制作报表的数据表或者视图选择到右边选定表中,然后确认。
打开字段资源管理器
将数据表中的字段拖放到报表中,使用过的数据库字段前边具有绿色的选中符号。
当然也可以在报表设计窗口中右击鼠标进行设置页面大小,添加文本、添加特殊字段,划线。
也可在报表中选择一个对象设置其大小、颜色、格式等。
好了我们已经创建了rpt文件。
保存它。
后边使用。
六显示报表
1创建web页面。
我们不妨采用系统默认的名称webform1.aspx
2切换到页面设计模式
将工具栏中报表设计组下的控件CrystalReportSource、与CrystalReportViewer控件各拖放一个到webform1.aspx页面中。
3打开页面的后台代码文件输入以下代码
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Web;
usingSystem.Web.UI;
usingSystem.Web.UI.WebControls;
usingSystem.Data;//1
usingCrystalDecisions.CrystalReports.Engine;//2
usingCrystalDecisions.Web;//3
usingCrystalDecisions.Shared;//4
namespaceFYMatWeb.Receive//5此处是应用的命名空间名,你的可能本文不同,你就实行系统给的//就行了
{
publicpartialclassWebForm1:
System.Web.UI.Page
{
protectedvoidPage_Load(objectsender,EventArgse)
{
//6获取数据
DataTabletable=clsConnect.SelectDataTable(enumDB.cqfywz,"select*fromysxxb");
//7为报表数据源控件设置报表文件路径及文件名
this.CrystalReportSource1.Report.FileName=Server.MapPath("~/CrystalReport1.rpt");
//8给报表设置数据源
this.CrystalReportSource1.ReportDocument.SetDataSource(table);
this.CrystalReportSource1.ReportDocument.Load(Server.MapPath("~/CrystalReport1.rpt"));
//9报表数据绑定
this.CrystalReportSource1.DataBind();
//10将报表数据源对象设置为CrystalReportViewer的数据源
CrystalReportViewer1.ReportSource=this.CrystalReportSource1;
//11进行报表数据浏览控件的数据绑定
CrystalReportViewer1.DataBind();
}
}
}
经过上边的11步你可以完成了水晶报表的制作了,好了来编译运行一下,在浏览器中查看webform1.aspx就可以看到报表了。
大功告成。
说明:
第6步本文使用了一个自己的类库直接用sql语句获得了一个datatable对象,用户可以采用自己方式先连接数据库,然后再获得数据可完成上边的练习。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Vs 水晶 报表 应用