百度云群组分享分享一些你知道的,谢谢谢谢谢谢

Vs2010的水晶报表; 选择下面一个下载(1是包括所有DLL);
下载安装后打开VS2010就可以在左边工具栏中看到CRYSTALREPORTVIEWER,并且可以新建水晶报表了;
用法跟以前版本的用法类似;  不过要注意下面几点;
A.  运行环境不能为.NET FRAMEWORK 4.0 CLINET PROFILE,要改为.NET FRAMEWORK 4,选中项目右键属性就可以更改了;
B.在项目中加一个APP.CONFIG(这是针对WINFORM项目),如果是WEB项目就不用加了,里面有一个WEB.CONFIG;在这配置文件中加上  &startup useLegacyV2RuntimeActivationPolicy=&true&&
&supportedRuntime version=&v4.0& sku=&.NETFramework,Version=v4.0&/&&/startup&
这可以避免ADO.NET与水晶报表运行时由于.NET版本问题出错
1)包括了报有DLL的水晶报表文件
2)水晶报表部署时用到的文件
只支持32位系统的包
只支持64位系统的
(1)下面做一个简单的水晶报表,在项目中建一个窗体FORM1,一个水晶报表CrystalReport1,一个数据集 DATASET1;(水晶报表的设置跟以前版本的一样)
在窗体上放一个CRYSTALREPORTVIEWER,然后在FORM1的LOAD事件下写上;我这是把水晶报表放在DEBUG这个文件夹下动态加载的;你也可以直接放在项目中在CRYSTALREPORTVIEWER上指定报表名称;
private void Form1_Load(object sender, EventArgs e)
SqlConnection con = new SqlConnection(&Data Source=10.100.100.5;Initial Catalog=User ID=proc4;Password=77cc88&);
con.Open();
SqlDataAdapter da = new SqlDataAdapter(&select top 100 * from ZZZPJ&, con);
DataSet ds = new DataSet();
da.Fill(ds, &ZZZPJ&);
string reportPath = Application.StartupPath + @&\CrystalReport1.rpt&;
ReportDocument rd = new ReportDocument();
rd.Load(reportPath);
rd.SetDataSource(ds.Tables[0].DefaultView);
this.crystalReportViewer1.ReportSource =/
(2)vs2010水晶报表的发布有两种方式;
一,就直接下载MSI文件安装在客户端,客户端就可以用了;32位的下载上面的3);如果是64位的下载上面的4);
二,就是下载上面2)中的MSM文件,里面第一个是CRRuntime_13_0.msm这个是英文包;如果需要支持中文就加一个MSM,( CRRuntime_13_0_zh_cn.msm); 另外加一个CRRuntime_13_0_maps.msm 这个可以不用;
用VS2010自带的打包软件打包发布,新建一个安装项目,安装项目的制作过程这里就不详细说了,跟以前的制过程一样;制作完后,右键项目选添加―――合并模块――把上面提到的三个以.MSM结尾的文件加入进去,并且把
C:\Program Files\Common Files\Merge Modules文件夹中的VC100的MSM加入进去,如果是32位的就加X86的,如果是64位的就加X64的;最后确定;
再右键项目选属性,点击“系统必备”按钮;在弹出的对话框中选中 VISUAL C++ 2010 运行库,注意根据系统选,有32与64位的;
在下面的单选按钮中选第二项“从与我的应用程序相同的位置下载系统必备组件”;
这样发布的准备工作就做完了,选择菜单上的生成――生成项目或者右键项目点生存就可以了;
注意:(我在上面所有提到的“项目”不是VS工具栏上面菜单中的“项目”;是你解决方案下的项目,比如你新建了一个安装项目叫SETUP1,那就是指SETUP1)
如果制作好的安装程序在安装过程中出未能注册某一个模块请到下面网址下载一个适合你系统版本的文件安装,就可以避免出错了;
阅读(...) 评论()如果只是为了能够在VS2010中运行有报表的程序,则可以简单的将运行程序所需的dll引入项目即可。如果你的机器没有这些组件可以来这下载:。一般只需要引用CrystalDecisions.CrystalReports.Engine.dll、CrystalDecisions.Shared.dll和CrystalDecisions.Web.dll即可。下载后将其放入web/bin下,然后引用它们就可以了。
上述只适用于运行他人编写的有关报表的项目,做为开发者则还需进行其他工作。
VS2010不在支持Crystal report的设计,我们下载SAP公司的免费版(for VS2010)来设计即可(设计过程同在VS2008中没什么区别,只是环境独立了)。随后将我们设计的第一个报表文件crTeacherWorkLoad.rpt文件拷贝到项目App_Data中。
我们使用CryStalReportViewer控件来显示刚才设计好的rpt文件。VS2010IDE工具箱中不包含该控件,如果你安装了CR for VS2010则可以使用如下方法来显示该控件:
如果没有此控件则可以直接将此控件的代码放入所需的aspx页面中,然后在这个aspx页面内注册此控件。
控件代码如下所示:
&CR:CrystalReportViewer ID=&CrystalReportViewer1& runat=&server&
&&&&&& AutoDataBind=&true& DisplayGroupTree=&false& Height=&50px& Width=&350px&/&
注册代码放到页面头头,代码如下所示:
&%@ Register Assembly=&CrystalDecisions.Web, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692fbea& Namespace=&CrystalDecisions.Web& TagPrefix=&CR& %&
如此以来再有了前面的三个dll的引用,就可以使用此控件来显示所需要的报表内容了。显示过程代码如下所示:
ReportDocument reportDocument = new ReportDocument();
&&&&&&&&& reportDocument.Load(Server.MapPath(&/App_Data/crTeacherWorkLoad.rpt&));
&&&&&&&&& reportDocument.SetDataSource(DtAllTeacherWorkLoad);//DtAllTeacherWorkLoad是查询出来的DataTable,其字段同rpt文件字段相同&&&&
&&&&&&&&& CrystalReportViewer1.ReportSource = reportD
&&&&&&&&& //将数据库信息传递给报表
&&&&&&&&& //定义水晶报表的数据库连接信息
&&&&&&&&& ConnectionInfo connectionInfo = new ConnectionInfo();
&&&&&&&&& string aservername, bDBName, cUserId, dP
&&&&&&&& //获取服务器名、数据库名,登录名,密码
&&&&&&&&& aservername = System.Configuration.ConfigurationManager.AppSettings[&ServerName&];
&&&&&&&&& bDBName = System.Configuration.ConfigurationManager.AppSettings[&DataBase&];
&&&&&&&&& cUserId = System.Configuration.ConfigurationManager.AppSettings[&UserId&];
&&&&&&&&& dPwd = System.Configuration.ConfigurationManager.AppSettings[&PassWord&];
&&&&&&&&& connectionInfo.DatabaseName = bDBN
&&&&&&&&& connectionInfo.UserID = cUserId;
&&&&&&&&& connectionInfo.Password = dP
&&&&&&&&& connectionInfo.ServerName =
&&&&&&&&& //SetDbLoginForReport(connectionInfo);
&&&&&&&&& TableLogOnInfos tableLogOnInfos = CrystalReportViewer1.LogOnI
&&&&&&&&& foreach (TableLogOnInfo tableLogOnInfo in tableLogOnInfos)
&&&&&&&&& {
&&&&&&&&&&&&& tableLogOnInfo.ConnectionInfo = connectionI
&&&&&&&&& }
本文讲了三个小问题,一是如何引用所需dll显示报表文件,二是如何注册CrystalReportViewer控件,三是如何使CrystalReportViewer控件显示报表数据。至于报表文件(rpt)的设计则要学习Crystal Report 10软件的使用了!
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:198456次
积分:3367
积分:3367
排名:第8618名
原创:123篇
转载:182篇
评论:19条
(2)(1)(3)(8)(1)(2)(3)(1)(9)(1)(1)(4)(3)(4)(7)(3)(3)(2)(16)(10)(7)(7)(12)(3)(24)(28)(3)(8)(33)(20)(23)(5)(8)(8)(5)(13)(1)(8)(5)

我要回帖

更多关于 谢谢谢谢 的文章

 

随机推荐