欢迎来到天天文库
浏览记录
ID:14886516
大小:32.00 KB
页数:6页
时间:2018-07-30
《1、水晶报表的好处》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、1、水晶报表的好处 1)利用水晶报表可以进行数值求平均值,画图等 2)利用水晶报表可以把文件导出不同的格式(word等)2、水晶报表的两种格式 1)pull模式,不利用DataSet,直接从数据库中取出数据 2)push模式,使用DataSet,利用它进行数据的加载和处理等3.水晶报表使用的库 1)水晶报表的引擎(CREnging.dll),作用:合并数据,装换格式 2)水晶报表设计器(CRDesigner.dll),作用:设计标题,插入数据等 3)水晶报表查看控件(CRWebFormViewer.DLL) 4)需要引入的命名空间 usingCrystalDec
2、isions.CrystalReports.Engine; usingCrystalDecisions.Shared;4、Pull模式下使用水晶报表 1)创建rpt文件 2)拖放CrystalReportViewer 3)绑定5、读取水晶报表文件 privatevoidReadCRV(cryatalReportViewercrv) { openFileDialogdlg=newOpenFileDialog(); dlg.Title="打开水晶报表文件"; dlg.Filter="水晶报表文件(*.rpt)
3、*.rpt
4、所有文件
5、*.*"; if
6、(dlg.showDialog()==DialogResult.OK) { crv.ReportSource=dlg.FileName; } }6.B/S下读取报表的文件 privatevoidReadCRV(cryatalReportViewercrv,Filefile) { stringstrName=file.PostedFile.FileName; if(strName.Trim()!="") { crv.ReportSource=strName Session["fileName"]=strNa
7、me; } } 在B/S中要防止数据源的丢失 priavtevoidPage_Load(objectsender,System.EventArgse) { if(Session["fileName"]!=null) { crv.ReportSource=Session["fileName"].ToString(); } }7.假如直接从数据库中读取数据,采用PULL模式可能出现错误(登录的用户名和密码不对) privatevoidReadCRV(CrystalReportViewercrv,CrystalReportc
8、r) { ReportDocumentreportDoc=newReportDocument(); reportDoc.Load(Server.MapPath(cr));//要加载的rpt文件的名字 //解决登录的问题 TableLogOnInfologonInfo=newTableLogOnInfo(); foreach(TabletbinReportDoc.Database.Tables) { logonInfo=tb.LogOnInfo; logonInfo.ConnectionInfo.ServerNa
9、me="(loacl)"; logonInfo.ConnectionInfo.DatabaseName="Pubs"; logonInfo.ConnectionInfo.UserId="sa"; logonInfo.ConnectionInfo.Password=""; tb.ApplyLogOnInfo(logonInfo); } crv.ReportSource=reportDoc; }8.采用Push模式,直接在数据源读取 privatevoidBindReport(CrystalReportViewercrv
10、) { stringstrProvider="Server=(local);DataBase=pubs;uid=sa;pwd="; CrystalReportcr=newCrystalReport(); DataSetds=newDataSet(); SqlConnectionconn=newSqlConnection(strProvider); conn.open(); stringstrSql="select*fr
此文档下载收益归作者所有