水晶报表的简单使用

 

1使用Pull模式
   1.首先创建rpt文件,并使用水晶报表设计接口设置一些必须的数据连接。    
    2.拖放一个   CrystalReportViewer控件至aspx页面,设置它的属性指定我们上一步创建的.rpt文件。    
    3.   在代码中调用DataBind方法。  
    创建   .rpt   文件:  
    1)   在右击”解决方案游览器“,在弹出的菜单中选择”添加“--”添加新项“-->”Crystal   Report”       
    2)   在”Crystal   Report   库”中选择”作为空白报表“单选按钮,最后单击“确定“。       
    3)这里将弹出水晶报表设计器。       
    4)   右击报表中的”详细资料区”,选择“数据库”->“添加/删除数据库..."  
    5)   在弹出的”数据库专家“中,扩展”OLE   DB(ADO)“选项,此时会弹出另外一个”OLE   DB(ADO)“窗口。  
    6)   在   "OLE   DB   (ADO)"   弹出窗口中,选择   "Microsoft   OLE   DB   Provider   for   SQL   Server"   然后   "Next"   
    7)   指定连接的信息  
    服务器   :   ASPCN   (您的机器是什么名字就写什么)    
    用户   ID:   sa  
    密码:  
    数据库   :   Pubs  
    8)   单击”Next“,最后单击”Finish“按钮。  
    9)   这时你就能在”数据库专家“窗口中看到我们选择的数据库。  
    10)   扩展”Pubs“数据库,扩展”表“,选择”Stores“表并将其加到”选定的表“区中,单击”OK"按钮。          
    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)   创建并运行你的程序!

 使用PUSH模式    
    我们采用下面的几步使用Push模式执行水晶报表:  
    1.   设计一个DataSet  
    2.   创建一个.rpt文件同时将其指定给上一步建立的DataSet。  
    3.   在aspx页面中拖放一个CrystalReportViewer控件同时将其与前面的rpt文件建立联系。  
    4.   在代码中访问数据库并把数据存入DataSet  
    5.   调用DataBind方法。  
    设计一个DataSet  
    1)   右击“解决方案浏览器”,选择“添加”--“添加新项”-->“数据集”  
    2)   从“服务器资源管理器”中的“SQL   Server”中拖放“Stores”表(位于PUBS数据库中)。  
   
   
    3)   此时在数据集中就会有一个Stores表的结构图。  
   
    -   .xsd文件中仅仅包含一个结构图,但是不会有任何数据在里面。  
    创建   .rpt   文件   :  
    4)   使用上面的介绍过的方法创建此文件,唯一的不同就是使用数据集来代替前面的直接连接数据。  
    5)建立.rpt文件之后,右击“详细资料”-->"添加/删除数据库“  
    6)   在”数据库专家“窗口中,展开”项目数据“(代替以前的OleDb),展开“ADO.Net数据集”--"DataSet1“,选择”Stores“表。  
    7)   将”Stores"表添加到“选定的表”中,点击“OK”  
   
    8)   使用PULL模式下的方法,建立一个WebForm  
    建立一个Crystal   Report   Viewer   控件  
    9)   建立一个Crystal   Report   Viewer   控件,并设定其属性,此处与PULL模式下是一致的。  
    Code   Behind   代码:  
    10)   在Page_Load方法中使用下面的子函数:

 C#代码:

//  在此处放置用户代码以初始化页面
         string  strProvider  =   "" ;
        SqlConnection MyConn 
=   new  SqlConnection(strProvider);
        MyConn.Open();
        
string  strSel  =   " Select * from Employees " ;
        SqlDataAdapter MyAdapter 
=   new  SqlDataAdapter(strSel, MyConn);
        DataSet1 ds 
=   new  DataSet1();
        MyAdapter.Fill(ds, 
" Employees " );

        ReportDocument ReportDoc 
=   new  ReportDocument();

        ReportDoc.FileName 
=   @" 绝对路径 " ; // 注意:这里一定要用绝对路径

//         加载出错一般原因可能是:
// 1,报表和数据源的结构不一致,字段多少、类型等不对应;
// 2,报表路径问题,使用的是绝对路径访问;

        ReportDoc.SetDataSource(ds);
        
this .CrystalReportViewer1.ReportSource  =  ReportDoc;

三 用程序改变报表中text的文本
代码如下:
C#代码:
1 CrystalDecisions.CrystalReports.Engine.TextObject GetTextObject;
2              GetTextObject  =  oCR.ReportDefinition.ReportObjects[ " 报表中的文本框对象名称 " as  CrystalDecisions.CrystalReports.Engine.TextObject; // oCR是自定义报表类的对象。
3              GetTextObject.Text  =   " 需要改变的内容 " ;

四 导出(摘自 http://www.cnblogs.com/strinkbug/archive/2006/11/01/546264.html?Pending=true#Post
 其实如果是在windows 的窗体中,水晶报表的Crystalreportviewer本身提供了导出功能,所以可以不需要编写任何代码。
      但是在asp.net中要实现水晶报表的导出功能则稍微有点不同了,需要实现少量的代码,下面是一个代码模版:
         public   void  Export( string  FileName,  string  Ext)
        
{
            ReportDocument reportDocument 
= GetReportDocument();
            ExportOptions exportOptions 
= new ExportOptions();
            DiskFileDestinationOptions diskOptions 
= ExportOptions.CreateDiskFileDestinationOptions();
            exportOptions.ExportFormatType 
= GetExportFormatType(Ext);
            exportOptions.ExportDestinationType 
= ExportDestinationType.DiskFile;            
            diskOptions.DiskFileName 
= FileName+"."+Ext;
            exportOptions.ExportDestinationOptions 
= diskOptions;
            reportDocument.Export(exportOptions);
        }

其中GetExportFormatType()的实现如下:

     private  ExportFormatType GetExportFormatType( string  ext)
        
{
            
switch (ext)
            
{
                
case "pdf":
                     
return ExportFormatType.PortableDocFormat;
                 
case "rtf":
                     
return ExportFormatType.RichText;
                 
case "doc":
                     
return ExportFormatType.WordForWindows;
                 
case "xls":
                     
return ExportFormatType.Excel;
                 
case "html":
                     
return ExportFormatType.HTML32;                 
                
default:
                    
return ExportFormatType.NoFormat;
            }

        }

而GetReportDocument()则是一个返回用户要导出的报表的ReportDocument 对象的函数,用户自己随意去实现。
另外还要注意,FileName的格式必须是:"c://crystalreport"  这样的形式。

套用这个代码模版,就可以实现5种格式的报表导出功能

======================================================= == 如果喜欢英文文档的朋友 == Crystal-Reports-2008-For-Dummies.pdf == == 链接: == http://download.youkuaiyun.com/download/a6566232/4627865 ======================================================= Crystal Reports 2008 用户指南 Crystal Reports 2008 Windows 2.1 介绍.....................................................31 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 利用 Flash、Flex 和 Xcelsius 实现的高级信息可视化...32 改善的最终用户报表查看体验..........................33 增强的报表设计器功能................................33 新增的灵活部署选项..................................34 灵活的应用程序集成..................................35 2.2 不同之处.................................................35 第 3 章安装 Crystal Reports 2008 37 3.1 安装概述.................................................37 3.2 安装 Crystal Reports 2008................................37 3.3 安装要求.................................................38 3.4 在本地计算机上安装 Crystal Reports.......................38 3.4.1 在本地计算机上安装...................................39 3.5 创建安装点并从网络服务器进行安装.........................45 3.5.1 创建 Crystal Reports 的安装点........................46 4 Crystal Reports 2008 用户指南 3.5.2 从网络安装 Crystal Reports...........................46 3.6 自定义安装...............................................52 3.7 运行无提示安装...........................................54 3.8 设置自定义横幅...........................................59 3.9 升级 Crystal Reports 组件................................60 第 4 章快速开始61 4.1 了解如何使用 Crystal Reports.............................61 4.1.1 示例数据 -- Xtreme.mdb...............................61 4.2 报表创建向导.............................................62 4.2.1 标准.................................................62 4.2.2 交叉表...............................................62 4.2.3 邮件标签.............................................62 4.2.4 OLAP.................................................63 4.3 新用户快速入门...........................................63 4.3.1 开始之前.............................................63 4.3.2 创建报表.............................................64 4.3.3 记录选择.............................................75 4.3.4 分组及排序...........................................79 4.3.5 完成报表.............................................82 4.4 高级用户快速开始.........................................83 4.4.1 选择报表类型及数据源.................................83 4.4.2 在“设计”选项卡上处理报表元素.......................84 4.4.3 使用其他报表功能.....................................86 第 5 章报表设计概念88 5.1 基本报表设计.............................................88 目录5 5.2 决定报表内容.............................................88 5.2.1 说明目的.............................................88 5.2.2 确定报表布局 ........................................89 5.2.3 查找数据.............................................90 5.2.4 操作数据.............................................91 5.2.5 确定打印区域特性.....................................92 5.3 设计纸张原型.............................................94 5.3.1 设计纸张原型.........................................94 第 6 章报表创建基础95 6.1 报表创建选项.............................................95 6.1.1 报表创建向导.........................................95 6.1.2 另一个报表...........................................95 6.1.3 新建报表.............................................96 6.1.4 报表创建向导.........................................96 6.1.5 另一个报表...........................................96 6.1.6 新建报表.............................................96 6.2 选择数据源和数据库字段...................................97 6.2.1 数据库专家...........................................97 6.2.2 字段资源管理器.......................................99 6.3 关于报表设计环境........................................101 6.3.1 “设计”选项卡......................................101 6.3.2 “预览”选项卡......................................105 6.3.3 HTML 预览选项卡.....................................109 6.4 创建新报表..............................................110 6.4.1 选择数据源..........................................110 6.4.2 添加表..............................................111 . . . .
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值