`
fastwind
  • 浏览: 324296 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

vs2005操作水晶报表(入门示例)

阅读更多

vs2005操作水晶报表(入门示例)
VS2005中ReportViewer 本地模式下报表呈现 入门示例 本示例操作 主要实现
a. ReportViewer关联Report1.rdlc的简单呈现
b. 对带有报表参数的Report1.rdlc的呈现
c. 利用程式生成的DataSet 填充报表
d. 调用存储过程 生成DataSet 填充报表
==========
简单的呈现 
==========
1. 打开VS2005,文件->新建->网站 选择语言种类(C#)
2. 在该解决方案下 设计其已经生成的Default.aspx
3. 将工具箱-数据下的ReportViewer 拉入Default.aspx的设计界面
4. 在用鼠标选中ReportViewer1时 可以看到其右上角的 小三角 图标
5. 用鼠标点击该小三角 将展开 ReportViewer任务 快捷菜单
6. 由于本项目 目前还没有做好的报表 所以 选择 设计新报表
7. 点击 设计新报表 后 将呈现报表Report1.rdlc的设计界面
8. 由于本项目 目前还没有做好的网站数据源 
  所以 此时要添加新数据源
  (如果没有呈现“网站数据源”界面,可以点击报表设计界面,
  此时上方菜单中多出现“数据”,“报表”等选项
  可以在“数据”菜单下,选择“显示数据源”)
9. 点击“添加新数据源” 会出现“TableAdapter 配置向导”
10. 选择数据连接(如连接到本机的Northwind数据库),下一步
11. 选择是否要将连接字符串保存到应用程序配置文件中,下一步
12. 选择命令类型,此时 可以 点击 取消 按钮,退出向导
13. 全部保存
14. 选择 视图 菜单 下 “服务器资源管理器”,
  可以看到刚才所建立的数据连接,
  可以看到Northwind数据库下的表,视图,存储过程,函数
15. 在解决方案的树下 找到并打开App_Code文件夹下的DataSet1.xsd数据集
16. 可以看到 打开的数据集设计器 是空的,此时可以将“服务器资源管理器”
  下的Northwind的表或存储过程等 拉入 数据集设计器
  (如此时 拉入了Orders表 和 Sales by Year这个存储过程)
17. 全部保存 
18. 双击Report1.rdlc,打开报表设计界面
  将此时的报表设计工具箱中的 报表项 的 表 拉入 报表设计界面
19. 选择 “数据”菜单下的“显示数据源”,
  可以在网站数据源下 看到 DataSet1 下的 两个 表 Orders 和 Sales by Year
20. 此时选择Orders下的任意字段 (如OrderID 和 CustomerID)
  拉到Report1.rdlc设计界面的表的“详细资料”处 用于报表显示
21. 全部保存
22. 回到Default.aspx的设计界面,为ReportViewer1 绑定报表
  选择ReportViewer1显示刚才设计好的Report1.rdlc
23. 全部保存,按F5或Ctrl+F5 运行,以查看初步效果

======================================
接下来要为Report1.rdlc添加一个报表参数 
======================================

24. 回到报表Report1.rdlc的设计界面
  点击 报表 菜单 下的“报表参数”
25. 在报表参数在设置框中 添加一个报表参数 进行相关设置 并 确定以保存
  (如其参数名称为rptParaA,类型为String)
26. 拉入一个文本框的报表项到Report1.rdlc的设计界面 以做为该报表的标题显示
27. 选中并右键单击该文本框,在弹出的菜单中选择“表达式”,
  进入“编辑表达式”的对话框
28. 在“编辑表达式”的对话框中,选择 参数,
  并双击刚才设置的rptParaA,使文本框的值=Parameters!rptParaA.Value
29. 保存对Report1.rdlc的修改
30. 因为新的Report1.rdlc报表的文本框需要有报表参数值的传入
  所以要在ReportViewer1 对Report1.rdlc的呈现时
  对Default.aspx.cs的编辑
31. 在Default.aspx.cs加入引用
  using Microsoft.Reporting.WebForms;  
  在Page_Load中加入如下代码


  ReportParameter rptParaA = new ReportParameter("rptParaA", "测试报表参数");
  ReportViewer1.LocalReport.SetParameters(new ReportParameter[] { rptParaA });

32.保存并运行 以查看效果

=========================================
接下来,需要对所要呈现的报表资料 进行定制
也就是通过设计DataSet 
用符合需要的数据对报表进行资料绑定和呈现
=========================================

33.设置ReportViewer1的Visible为false
34.在Default.aspx的设计界面 加入一个按钮Button1
  将通过此按钮的Click事件 实现对数据库的访问 以及DataSet的数据填充
  和对ReportViewer1的资料绑定
35. Default.aspx.cs加入引用
  using System.Data.SqlClient;
  using Microsoft.Reporting.WebForms;

  Button1_Click中的代码示例如下 

  SqlConnection myConn = new SqlConnection("Data Source=192.168.0.36;Initial Catalog=Northwind;User 

ID=sa;Password=sa");
  SqlDataAdapter myda = new SqlDataAdapter("select top 5 * from orders", myConn);
  DataSet myds = new DataSet();
  myConn.Open();
  myda.Fill(myds);
  myConn.Close();

  ReportViewer1.Visible = true;

  ReportParameter rptParaA = new ReportParameter("rptParaA", "测试报表参数");
  ReportViewer1.LocalReport.SetParameters(new ReportParameter[] { rptParaA });
  
  ReportDataSource rds = new ReportDataSource("DataSet1_Orders", myds.Tables[0]);
  ReportViewer1.LocalReport.DataSources.Clear();
  ReportViewer1.LocalReport.DataSources.Add(rds);
  ReportViewer1.LocalReport.Refresh();


  注意ReportDataSource rds = new ReportDataSource("DataSet1_Orders", myds.Tables[0]);
  的"DataSet1_Orders"是与前台html程序的

  <rsweb:ReportViewer ID="ReportViewer1" runat="server" Font-Names="Verdana" Font-Size="8pt" Height="400px" 

Visible="False" Width="400px">
  <LocalReport ReportPath="Report1.rdlc">
  <DataSources>
  <rsweb:ReportDataSource DataSourceId="ObjectDataSource1" Name="DataSet1_Orders" />
  </DataSources>
  </LocalReport>
  </rsweb:ReportViewer>
  中的<DataSources>的Name="DataSet1_Orders"是一致的

  可以通过对DataSet的填充时的sql语句等的定制 来得到所需要的数据 以便报表呈现
  需要注意的是由于ReportViewer1此时的关联报表为Report1.rdlc,所以DataSet的Tables[0]中的结构
  一定要包含Report1.rdlc所呈现的字段,所以,这里的Sql语句为select top 5 * from orders
36.保存 运行 点击Button1 以便 报表呈现

===============================================
如果 报表所要呈现的数据 来源于存储过程
那么 在装载DataSet时 使其数据来源于存储过程即可
===============================================

37.右击项目 添加新项 ,选择 报表,向项目中加入Report2.rdlc,
  设置其呈现的数据来源为存储过程 Sales by Year
  同样的在Report2.rdlc的设计界面 加入“表”报表项
  并将网站数据源下的DataSet1下的Sales by Year表中的字段
  拉入报表项“表”在详细数据中 进行显示
38.如同Default.aspx 向项目中添加新的页面Default2.aspx
  向Default2.aspx加入一个Button 和 ReportViewer1
  并设置ReportViewer1所要呈现的报表为Report2.rdlc
  设置ReportViewer1的Visible为false
  双击Button 进行其Click事件的编写
  设置Default2.aspx为项目的起始页
39.在Default2.aspx.cs加入引用
  using System.Data.SqlClient;
  using Microsoft.Reporting.WebForms;
40.Button1_Click的事件代码示例如下


  protected void Button1_Click(object sender, EventArgs e)
  {
  SqlConnection myConn = new SqlConnection("Data Source=192.168.0.36;Initial Catalog=Northwind;User 

ID=sa;Password=sa");
  SqlDataAdapter myda = new SqlDataAdapter("Sales by Year", myConn);
  myda.SelectCommand.Parameters.AddWithValue("@Beginning_Date", "1997-10-10");
  myda.SelectCommand.Parameters.AddWithValue("@Ending_Date", "2000-10-10");
  myda.SelectCommand.CommandType = CommandType.StoredProcedure;
  DataSet myds = new DataSet();
  myConn.Open();
  myda.Fill(myds);
  myConn.Close();

  ReportViewer1.Visible = true;
   
  ReportDataSource rds = new ReportDataSource("DataSet1_Sales_by_Year", myds.Tables[0]);
  ReportViewer1.LocalReport.DataSources.Clear();
  ReportViewer1.LocalReport.DataSources.Add(rds);

  ReportViewer1.LocalReport.Refresh();
  }

分享到:
评论

相关推荐

    水晶报表入门示例源代码(C# WinForm)

    这个入门示例源代码提供了一种简单的方法,帮助开发者理解和掌握如何在C#环境下利用水晶报表生成、显示和打印报告。 在C# WinForm中集成水晶报表,首先需要安装水晶报表的开发组件,例如通过NuGet包管理器添加`...

    水晶报表入门教程

    【水晶报表入门教程】 水晶报表(Crystal Reports)是一款强大的报告设计工具,广泛应用于各类企业级应用中,用于生成各类报表,包括财务报表、销售报告、库存分析等。它以其直观的用户界面和丰富的数据源连接能力...

    水晶报表入门实例(C# WinForm)

    本文将基于给定的信息——“水晶报表入门实例(C# WinForm)”进行详细的知识点梳理,帮助初学者快速掌握水晶报表的基本操作流程。 ### 一、新建WinForm项目 首先,打开Visual Studio开发环境,新建一个Windows ...

    C#水晶报表教程入门介绍

    通过以上介绍,你已经掌握了在C#中使用VS2005进行水晶报表的基本操作。无论是Web应用程序还是Windows Forms应用程序,你都可以利用拉模式或推模式灵活地创建和展示复杂的数据报表。在实际开发中,可以根据项目的具体...

    VS2008水晶报表快速入门

    "VS2008水晶报表快速入门.chm"文件是关于这个主题的详细指南,包含了更多实用技巧和示例,可以帮助你在实践中进一步提高水晶报表的设计和开发能力。记得仔细阅读和实践,以便充分利用水晶报表的强大功能。

    水晶报表入门的PPT

    **水晶报表入门详解** 水晶报表(Crystal Report)是一款强大的报表设计工具,主要用于处理数据库,协助用户分析和解读关键信息。它能从各种数据源生成所需的报表,并提供了丰富的功能,包括公式、交叉表、子报表...

    著名的水晶报表示例,欢迎下载

    通过这个“水晶报表 示例 教程”,你将有机会亲手操作,一步步实践上述知识,从入门到精通。请确保跟随教程的步骤,结合“水晶易表例子”中的实际文件进行学习,以加深理解和记忆。祝你在学习过程中取得丰硕的成果!

    水晶报表(通俗易懂,优秀的入门教程)(100多页,图文并茂)

    - **数据库连接占用问题**:水晶报表引擎会占用一个数据库连接,直到报表操作完成,可能会导致资源浪费,尤其是在并发量较高的情况下。 - **不适合大型BS系统**:对于大型的浏览器/服务器(BS)架构系统而言,PULL模式...

    水晶报表最详细的资料

    1. **快速入门**:水晶报表提供了快速入门指南,帮助新用户快速上手。这包括使用示例数据创建报表的基本步骤,以及如何利用报表创建向导来构建不同类型报表的过程。 2. **报表设计概念**:深入理解报表设计的基本...

    Crystal Reports 2008 水晶报表官方中文傻瓜教程

    《Crystal Reports 2008 水晶报表官方中文傻瓜教程》是针对初学者设计的一份详尽教程,旨在帮助用户快速掌握Crystal Reports 2008这一强大的报表设计工具。本教程以中文版的形式呈现,降低了学习难度,使得非英语...

    很好用的水晶报表帮助文档

    6. 交互式报表:水晶报表支持交互式操作,用户可以在查看报表时进行数据钻取、切片、切块等,以深入探究数据。 二、使用水晶报表帮助文档 1. 快速入门:帮助文档通常包含入门教程,详细介绍如何创建一个新的报表,...

    水晶报表教程PDF 文件

    **示例数据**:提供了名为“Xtreme.mdb”的示例数据库,用于演示如何使用水晶报表创建报表。 **报表创建向导**:提供了几种不同类型的报表创建向导,如标准报表、交叉表、邮件标签和OLAP报表。 **新用户快速入门**...

    水晶报表2008中文帮助

    通过《水晶报表2008帮助》.chm文件,用户可以详细查阅每个功能的使用方法、步骤和示例,进一步提升报表设计和开发的效率。这份中文文档是开发者和管理员不可或缺的参考资料,对于理解和掌握水晶报表2008的各项功能至...

    SAP B1水晶报表使用指南

    ### SAP B1水晶报表使用指南知识点详述 #### 一、Crystal Reports 2008 SP3概述 **1.1 关于Crystal Reports** - **产品背景:** Crystal Reports 是一款广泛使用的商业智能(BI)工具,特别适用于中小型企业的报表...

    水晶报表技术

    本篇将深入探讨水晶报表的基础知识,实例解析以及源码分析,帮助初学者快速入门。 一、水晶报表基础入门 1. 安装与配置:首先,你需要安装水晶报表的开发组件,如SAP Crystal Reports,通常作为Visual Studio的...

    c#水晶报表初学案例(附源码)

    本教程主要关注"C#水晶报表初学案例",旨在帮助新手快速入门。通过提供的源码,你可以深入理解如何在C#项目中集成和使用水晶报表。以下是关键知识点的详细说明: 1. **水晶报表安装与集成**:首先,你需要在你的...

    水晶报表使用教程和帮助

    本教程的CHM文档提供了详细的步骤指导和示例,帮助用户从入门到精通水晶报表的使用,无论你是报表新手还是有经验的开发人员,都能从中受益。通过学习,你可以掌握数据的高效呈现,提升业务分析和决策效率。

    水晶报表教程.doc

    水晶报表是一款强大的报表设计和生成工具,它被广泛应用于各种软件开发环境中,特别是在Microsoft Visual Studio 2005 (VS2005)中集成了水晶报表,使得开发者能够更加便捷地创建和管理报表。本教程主要针对新手,...

Global site tag (gtag.js) - Google Analytics