快速掌握 CrystalReport for .net

        几乎在所有的应用程序中报表都是程序员头疼的问题。在.net环境下包含了功能强大的报表工具: Crystal Report。它能很好的与数据库交互,做出各种漂亮的报表和分析图表(具体功能下边文章会更详细的介绍).
        事实上,今天的这篇文章是我前段时间为一家公司的讲课的课件,经过改版发表了出来希望能对所有在.net环境下开发报表的程序员一些帮助。由于我公司是做电子政务系统,所以严重的“中国式报表”巨多,所以我为为公司自己封装了一个报表控件,实现了报表单据中数据的录入、删除、显示、打印等功能。如有朋友预见类似的问题,我很乐意与你交流,共同学习。
e-mail:billzhangmingming@sina.com.cn
 
         从1993年开始,Crystal Report 就是Visual Studio 套件中的一部分。目前实际上已成为Visual Studio.NET 中的报表标准,在Windows 报表编写领域中居于领先地位,推动着Web报表的未来发展。
         最新的Visual Studio.NET 以集成开发环境(IDE)中整和了Crystal Report9.0,从而增强了Visual Studio.NET 的开发功能, Crystal Report 为开发人员提供了尽可能的API。

                         Crystal Report for .NET 的功能简介
        通过将Crystal Report 的报表处理功能整和到自己的数据库应用程序中,应用程序和Web开发人员可以节省开发时间来满足用户的需求。Crystal Report 支持大多数流行的开发语言,可以方便的在任何应用程序中添加报表。
        不论是IT行业的站点管理员,还是金融业、电信业的数据库管理员,Crystal Report 都堪称是一个功能强大的工具,它可以帮助每个人对数据进行分析和解析。
 具体来说,Crystal Report的功能有以下几点:
 **全面的数据库访问:
  Crystal Report 中包括了超过35中数据源驱动,可以访问一种XML、企业和关系型数据库。
 **广泛的设计格式与设计:
  通过Crystal Report,用户可以将数据库转换为高度交互性内容。可以从100多中格式选项中进行选择、包括参数、映射、
  交叉表和超级链接、用以强化报表的冲击力。
 **强大的图表设计功能:
  Crystal Report 可以在报表中包含多彩的、易读的图表(提供了非常丰富的报表类型,如:条形图、折线图、面积图、
  饼图、干特图、股票图等)。
 **灵活的应用集成技术:
  Crystal Report 带有灵活的Java、COM和.NET SDK,以及可内嵌的Report Application Server,可将报表与企业Web应用
  紧密地集成在一起。通过使用Crystal Report 的“零”客户端浏览器控制,能够为最终端拥护提供丰富的报表交互、创建
  和修改功能。
 **强大的报表导出:
  Crystal Reprort 的所有的报表都可以导出多种不同的格式:包括XML、PDF、HTML、和Microsoft Excel。
 
     Crystal Report 设计器的布局
 **字段资源管理器:
  列出该报表所有的字段,如:使用的数据库字段、参数字段、公式字段等。可以在此修改和删除字段对象。
 **主报表窗口:
  用来在报表窗口中显示主报表。对于包含子报表的报表,有主报表窗口和对每个的深化(通过双击)的子报表有一个子报
  表窗口。可以通过右击报表窗口的任何空白位置来启动报表快捷菜单。
 **水晶报表主工具栏:
  包括记录选择、分类和文本对象格式化图标。可以对整个工具栏移动或改变大小。
 **水晶报表插入工具栏:
  可以插入汇总字段、组、子报表、图表和图片的图标。也可以在Crystal Report工具栏中单击鼠标来选择“插入”。
    
                               Crystal Report 的具体实例
    **Crystal Report viewer(水晶报表查看器)
 
  Crystal Report Viewer是在Visual Studio.NET中Windows 应用程序来访问和查看水晶报表的Windows窗体控件。类似其
  他的Windows 窗体控件,增加Windows 窗体查看器可以非常方便的从Visual Studio.NET工具箱中拖动水晶报表查看器控件到Windows窗体设计试图。之后再指定水晶报表查看器中的水晶报表。
 ***一个使用Crysatl Report Viewer创建报表的Demo:
  要在 Visual Basic 或 C# 项目中向 Windows 窗体添加 Windows 窗体 Viewer,请执行下列操作:
  打开“工具箱”,并将一个 CrystalReportViewer 拖到窗体上。
  通过拖放操作将 Windows 窗体查看器调整到希望的大小并将其移动到所需位置。
  当运行应用程序时,报表将显示在查看器中。
  与“工具箱”中的任何其他控件一样,如果想向 Windows 窗体查看器控件添加代码,请双击该控件以显示“代码”视图。
  接下来,将报表绑定到 Windows 窗体查看器。
  具体关于本Demo,我在Wiki上写了有关如何操作的一篇非常详细的文章,建议大家去看看。
 
         **ReportDocument对象简介:
       Crystal Reports 对象模型的顶级是 ReportDocument 对象。ReportDocument 包含与报表对接及自定义报表所需的所有 属性和方法。您既可使用其 Load 方法打开报表文件,也可为其分配一个强类型报表。
  要使用 ReportDocument,您首先必须引用 CrystalDecisions.CrystalReports.Engine 命名空间 (可在 CrystalDecisions.CrystalReports.Engine.dll 中找到)。如果您已将报表插入应用程序中,则会自动添加此引用。
 
 ***一个具体使用ReportDocument对象创建动态加载报表的Demo:
 
  向 CrystalDecisions.CrystalReports.Engine 添加引用
  在代码编辑器中打开 Form1.cs。
  在Form1窗体上添加一个Button.
  向 Form1.cs 添加下列命名空间:
  using CrystalDecisions.CrystalReports.Engine;
  创建一个报表对象,作为 Form1() 中的公共 ReportDocument 变量:
  public ReportDocument oRpt=null;
  在函数 button1_Click() 中,使用“报表文档”对象加载 MyReport.rpt,并将该对象绑定到 Windows 窗体查看器:
              private void button1_Click(object sender, System.EventArgs e)
              {
                   rpt=new ReportDocument();
                   rpt.Load("..//..//MyReport.rpt");
                   crystalReportViewer1.ReportSource=rpt;
              }

 
 
      **使用DataSet创建主从表报表的Demo:
  在报表中,有许多表是主从结构,比如:订单与订单细节,每个订单是一个“订单”表中的一条记录,而其细节是另个一  个“订单 细节”表中的多条记录,两个表通过一个字段"订单ID"关联起来,这种报表可利用其分组功能实现,下面对其进行具体的介绍。
 
  在From1.cs上添加“CrystalReportViewer”控件。
  在“解决方案资源管理器”中,右击项目,指向“添加”,选择“数据集”,单击确定。
  在“服务器资源管理”器中,添加连接,本示例使用"Crystal Report for .NET"中的示例数据库Xtreme.mdb,默认的安装
  目录在
  “F:Program Files/Microsoft Visual Studio.net/Crystal Reports/Samples/Database/chs”下,单击确定。
  将“订单”表和“订单细节”表拖到”DataSet“中。
  新建一个Crystal Report文件,起名为"MyReport".
  使用报表专家,在”项目数据“中选择”ADO。NET数据集“,插入”订单“和”订单明细“表,在字段选择器上选择要在报表上
  显示的数据
  字段。有两个字段是必须的({客户.客户ID}和{产品细节.产品ID})。在”组“选项卡中选择分组依据为”订单“表的”订单ID“。
  单击”完成“。
  回到Form1.cs下进行编码。
  在Form1的命名空间的开始地方输入:
  using System.Data.OleDb;
  在Form1的类定义开始地方输入:
  private MyReport report=null;
  在Form1_Load()中输入:
   report=new MyReport();
   Dataset1 dataSet=new Dataset1();
   OleDbConnection conn=new OleDbConnection
    ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F://Visual Studio.net//Crystal Reports//Samples//Database//chs//Xtreme.mdb");
   OleDbDataAdapter oleAdapter=new OleDbDataAdapter("SELECT * FROM 订单",conn);
   oleAdapter.Fill(dataSet,"订单");
   OleDbDataAdapter oleDetailsAdapter=new OleDbDataAdapter("SELECT * FROM 订单细节",conn);
   oleDetailsAdapter.Fill(dataSet,"定单细节");
   report.SetDataSource(dataSet);
   crystalReportViewer1.ReportSource=report;
  产生两个OleDbDataAdapter类的对象,并分别使用填充Fill方法可以连接到被指定的数据库获取数据。
 
 
 
 
 **图表: 
  Crystal Reports 使您可以在报表中包含复杂的、多彩的图表。绘制图表不仅是一种表示数据的方法,也是一种分析工具。
 用户可以在图表或图表的图例上深化以获取详细信息。
 
  可以根据以下内容绘制图表:
   摘要和小计字段
   详细信息、公式和运行总和字段
   交叉表摘要
 
  **如何在报表中插入图表的具体步骤:
   在 Report Designer 中右击,指向“插入”,并单击“图表”。
  在“类型”选项卡中,选择图表类型。
  如果希望“图表专家”使用“坐标轴”和“选项”选项卡上的默认选项,请选择“自动设置图表选项”。
  单击“数据”选项卡。
  在“位置”区域,指定图表在报表中出现的频率,然后单击“页眉”或“页脚”指定放置图表的位置。
  在“布局”区域,选择图表布局。
  在“数据”区域,指定要作为条件使用的数据库字段。
  如果“坐标轴”和“选项”选项卡出现,则可以自定义某些图表属性,如轴的缩放比例、图例和数据点。
  单击“文本”选项卡。接受默认标题信息或将新标题添加到图表。
  单击“确定”按钮。
 
 **使用公式
  公式概述:
   在许多情况下,报表所需的数据以存在与数据库表字段中。例如:若要准备一份订单列表,应将适当的字段放置在表内。
  但是,有时需要在报表中放置不存在与任何数据字段中的数据。在这种情况下,便需要创建公式。例如:若要计算处理每
  份订单所需花费的天数,则需要一个可确定的订购日期和发货日期之间天数的公式。利用Crystal Report可以轻松地创建
  此类公式。
 
  使用“公式编辑器”创建和编辑公式。
   当通过右击“字段资源管理器”中的“公式字段”并选择“新建”来编辑现有的公式字段或创建新的公式字段时,
  出现该对话框。在为公式命名之后即会出现该对话框。

  **子报表:
  子报表是报表中的报表。使用子报表,可以幌喙氐谋ū砗喜⒌揭桓霰ū碇小?梢孕鞅疚薹唇拥氖荩蛘咴诘ジ?BR> 报表中显示相同数据的不同视图。
  创建子报表的过程与创建常规报表的过程相似。字报表有报表大多数的特性,包括他自己的记录选择条件。子报表月报表之间
 唯一的区别是子报表:
  * 是作为对象插入到主报表中,它不能独立存在(但可以将子报表另存为主报表)。
  * 可以放置在报表的任何一节内,整个子报表将在该节中打印。
  * 子报表中不能包含另一个子报表。
 
 **如何创建子报表的具体步骤:
   在 Report Designer 中右击,指向“插入”,单击“子报表”。
   将子报表对象拖动到报表上。
   选择项目中的一个报表、另一个现有报表或为子报表创建一个新报表。
   选择“按需要显示子报表”以便能够在需要时检索子报表上的数据。否则,所有子报表数据将与报表一起出现。
    注意   使用按需要显示子报表将提高包含子报表的报表的性能。
   如果需要将子报表链接到主报表中的数据上,请单击“链接”选项卡。
   从“可用字段”列表中选择要在主(包含)报表中用作链接字段的字段。
   使用“字段链接”部分(只有在选定了链接字段后才会出现)为每个链接字段设置链接:
   从“使用的子报表参数字段”中选择要链接到主报表的字段;
   选择“基于字段选择数据”复选框,并从相邻的下拉列表中选择字段,以便基于特定的字段组织子报表数据(这相当于快速使用“选择专家”
   )。如果没有在这里指定字段,子报表将采用主报表的结构。
   单击“确定”按钮。
 
 
 
 

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: Crystal Reports for .NET Framework 2.0是一款用于.Net Framework 2.0的报表设计和生成工具。它是由SAP公司推出的一种灵活易用的报表工具,可用于生成高质量的企业级报表。 要下载Crystal Reports for .NET Framework 2.0,可以按照以下步骤进行: 1. 打开您的Web浏览器,并在搜索引擎中搜索Crystal Reports for .NET Framework 2.0下载。 2. 找到SAP官方网站或其它可信赖的软件下载网站。 3. 在搜索框中输入“Crystal Reports for .NET Framework 2.0”进行搜索。 4. 在搜索结果中找到适用于.Net Framework 2.0的Crystal Reports版本,通常会标明支持的软件版本。 5. 点击下载链接,将会开始下载安装程序到您的计算机中。 6. 下载完成后,双击安装程序并按照指示进行安装。 7. 在安装过程中,您可能需要接受软件许可协议和选择安装选项。 8. 等待安装完成后,您将能够在您的计算机上找到Crystal Reports for .NET Framework 2.0的程序图标。 9. 点击该图标启动Crystal Reports for .NET Framework 2.0。 Crystal Reports for .NET Framework 2.0提供了一套强大的工具和功能,使您能够轻松设计、生成和分发各种类型的报表。它支持多种数据源,包括数据库、Excel文件和Web服务。它还具有丰富的报表设计功能,如图表、子报表、条件格式化和参数等。此外,它还可以将报表导出为PDF、Word和Excel文件格式,方便与他人共享和打印。 总之,通过按照上述步骤下载和安装Crystal Reports for .NET Framework 2.0,您将能够轻松使用这款强大的报表工具来满足您的报表设计和生成需求。 ### 回答2: Crystal Reports for .NET Framework 2.0是一款强大的报表生成工具,可以与.NET Framework 2.0一起使用。通过使用Crystal Reports,开发人员可以轻松地在应用程序中创建、编辑和展示专业的报表。 要下载Crystal Reports for .NET Framework 2.0,您可以按照以下步骤进行操作: 1. 打开您的Web浏览器,并访问SAP官方网站。 2. 在网站的搜索栏中输入"Crystal Reports for .NET Framework 2.0下载",然后点击搜索按钮。 3. 在搜索结果中,找到官方的Crystal Reports for .NET Framework 2.0下载页面,并点击进入。 4. 在下载页面中,您会看到不同版本的Crystal Reports。请确保选择适用于.NET Framework 2.0的版本。 5. 单击下载链接,然后选择保存文件的位置。 6. 下载完成后,找到保存的文件,并双击运行安装程序。 7. 按照安装向导中的指示,完成Crystal Reports for .NET Framework 2.0的安装过程。 安装完成后,您就可以在.NET Framework 2.0的开发环境中使用Crystal Reports了。它提供了丰富的功能和工具,让您能够灵活地设计和生成各种类型的报表。 总之,Crystal Reports for .NET Framework 2.0是一款非常实用的报表生成工具,可以帮助开发人员快速创建专业的报表。通过按照上述步骤下载和安装,您可以轻松地开始使用它。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值