`
micc010
  • 浏览: 71574 次
  • 性别: Icon_minigender_1
  • 来自: 广西
社区版块
存档分类
最新评论
阅读更多
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();
    }



41.保存 运行 点击按钮 报表效果查看
分享到:
评论

相关推荐

    VS 2012 ReportViewer 自适应大小

    ReportViewer 自适应大小解决方案 ReportViewer 是Visual Studio中的一款 Reporting 组件,能够帮助开发者快速创建报表。然而,在使用 ReportViewer 显示报表时,经常会遇到无法自适应高度和宽度的问题。这个问题...

    Microsoft.ReportViewer10.0的dll包

    在用.net开发的程序包含rdlc 报表时,无论是winForm或webForm程序在部署到客户机子时都要求客户机上安装有ReportViewer 报表查看器,给部署带来了麻烦。现在好了,只要将这几个 dll 文件放到 winForm 的 exe 文件的...

    利用reportviewer与C#生成报表

    在这个教程中,我们将探讨如何利用 ReportViewer 控件和 C# 语言来构建这样的报表。 ReportViewer 是 .NET Framework 的一部分,它是一个用于在 WinForms 应用程序中展示和交互报表的控件。通过 ReportViewer,用户...

    Microsoft.ReportViewer.ProcessingObjectModel.dll

    未能加载文件或程序集“Microsoft.ReportViewer.ProcessingObjectModel, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a” bin目录下一定要有以下3个文件。 1) Microsoft.ReportViewer.Common...

    Microsoft.ReportViewer的Dll合集 10.0

    在用.net开发的程序包含rdlc 报表时,无论是winForm或webForm程序在部署到客户机子时都要求客户机上安装有ReportViewer 报表查看器,给部署带来了麻烦。现在好了,只要将这几个 dll 文件放到 winForm 的 exe 文件的...

    Microsoft.ReportViewer.ProcessingObjectModel V11

    《Microsoft.ReportViewer.ProcessingObjectModel V11:Visual Studio 2013 报表查看器的DLL部署与IIS集成详解》 在开发基于微软技术的报表应用时,Microsoft.ReportViewer是一个不可或缺的组件,特别是在Visual ...

    Microsoft.ReportViewer.Common12.0.0.0全

    《Microsoft ReportViewer 12.0.0.0:全面解析与应用指南》 Microsoft ReportViewer 是微软提供的一款用于在Windows应用程序中展示报表的强大组件,它支持多种数据源和丰富的报表设计功能。在这个版本——12.0.0.0...

    C# winform 利用 reportViewer控件实现数据库记录打印

    Microsoft的`reportViewer`控件是其中一个强大的工具,它允许开发者在Windows应用程序中嵌入报表设计和查看功能。本教程将深入讲解如何利用`reportViewer`控件实现从数据库中选取特定记录并进行打印。 首先,我们...

    WPF中使用ReportViewer

    在本文中,我们将深入探讨如何在WPF应用中使用ReportViewer控件,这是一个强大的报表展示工具,常用于生成和展示复杂的数据报告。ReportViewer控件最初是为Windows Forms设计的,但通过WindowsFormsIntegration库,...

    reportViewer动态绑定DataTable

    完美的数据报表reportViewer动态绑定DataTable数据, 1.创建窗体form1 2.拖入reportViewer1 3.解决方案中添加-数据-数据集(dataset1)-工具栏中拖入DataTable到xsd界面-添加列 DataColumn1-DataColumn4 4.解决方案...

    ReportViewer很完整的教程

    ReportViewer 教程详解 ReportViewer 是一个强大的报表工具,用于生成和显示报表。在本教程中,我们将学习如何使用 ReportViewer 来生成一个完整的报表,从新建工程到添加报表控件、设计报表、添加数据源等步骤。 ...

    Microsoft.ReportViewer.WinForms.dll

    标题 "Microsoft.ReportViewer.WinForms.dll" 是微软开发的一个控件,用于在Windows Forms应用程序中嵌入报表查看器功能。这个DLL文件是.NET Framework的一部分,主要用于显示和交互基于Microsoft SQL Server ...

    Microsoft.ReportViewer.ProcessingObjectModel.rar (8.0.0)

    未能加载文件或程序集“Microsoft.ReportViewer.ProcessingObjectModel, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a” bin目录下一定要有以下3个文件。 1) Microsoft.ReportViewer....

    Microsoft.ReportViewer的Dll合集 9.0

    在用.net开发的程序包含rdlc 报表时,无论是winForm或webForm程序在部署到客户机子时都要求客户机上安装有ReportViewer 报表查看器,给部署带来了麻烦。现在好了,只要将这几个 dll 文件放到 winForm 的 exe 文件的...

    ReportViewer

    ReportViewer

    Microsoft.ReportViewer.Common(16个版本含11.0)

    文件描述: Microsoft.ReportViewer.Common.dll 文件大小: 3.48M X86/X64: X86 更新时间: 2010-12-29 19:23:44 文件 MD5: B90FD7B1C731A8A3CC74FD60D0225B3E 文件版本: 9.0.21022.8 文件描述: Microsoft....

    Microsoft.ReportViewer三件套(2005,2008).zip

    【Microsoft.ReportViewer三件套详解】 Microsoft.ReportViewer是微软提供的一组用于在应用程序中嵌入报表查看功能的组件。这个三件套包含了2005和2008两个版本,适用于不同开发环境的需求。ReportViewer组件使得...

    VS2012开发工具C#语言 ReportViewer报表打印应用实例(含资料链接)

    在本文中,我们将深入探讨如何使用Visual Studio 2012 (VS2012) 开发工具,结合C#语言以及ReportViewer控件来实现报表打印的应用实例。这是一个非常实用的功能,尤其对于那些需要在应用程序中展示和打印数据的开发者...

Global site tag (gtag.js) - Google Analytics