在公司开发,使用到ReportView技术,写下自己的经验。

1.在工具箱中找到 ReportViewer,ScriptManager放到test.aspx页面。

如果找不到报表项,请参考http://www.cnblogs.com/worf/p/5714455.html

2.添加数据集 DataSet.xsd

在数据集中添加DataTable,添加查询的列,列名要和数据库中的列(字段)对应。

3.添加报表Report.rdlc

4.绑定数据

在这里绑定数据使用的是动态绑定。

  private void getDateBind()
{
//获得路径
string req_url = this.Request.Url.ToString();
string currentPath = "";
int pos = req_url.LastIndexOf("/");
if (pos > )
{
currentPath = req_url.Substring(, pos + );//给报表文本框添加url
}
DataSet ds = BuildingDetails.GetIndustryHYData(time1, time2, buildingId, industryId);//从数据库中查询的数据
totalCount.InnerText = ds.Tables[].Rows.Count.ToString();
rvBuildingDetail_IndustryHY.LocalReport.DataSources.Clear();
rvBuildingDetail_IndustryHY.LocalReport.DataSources.Add(new ReportDataSource("BuildingDetail_IndustryHY", ds.Tables[]));
rvBuildingDetail_IndustryHY.AsyncRendering = true;
rvBuildingDetail_IndustryHY.InteractivityPostBackMode = InteractivityPostBackMode.AlwaysSynchronous;
rvBuildingDetail_IndustryHY.ShowToolBar= true;//获取或设置一个指示工具栏在控件上是否可见的值。默认为true
rvBuildingDetail_IndustryHY.LocalReport.EnableHyperlinks = true;//指示在报表包含超链接操作时是否可以呈现
rvBuildingDetail_IndustryHY.HyperlinkTarget = "_self";//在相同的框架中打开被链接文档
rvBuildingDetail_IndustryHY.LocalReport.ReportPath = @"BuildingDetail\rdlc\BuildingDetail_IndustryHY.rdlc";//获取或设置本地报表的本地文件系统路径
rvBuildingDetail_IndustryHY.LocalReport.ReportEmbeddedResource = "BuildingDetail_IndustryHY.rdlc";//获取或设置报表嵌入资源的名称 //设置参数
ReportParameter rpCurrentPath = new ReportParameter("url", currentPath);
ReportParameter rpTime1 = new ReportParameter("time1", time1);
ReportParameter rpTime2 = new ReportParameter("time2", time2);
ReportParameter rpIndustryId = new ReportParameter("industryId", industryId);
ReportParameter rpBuildingId = new ReportParameter("buildingId", buildingId);
rvBuildingDetail_IndustryHY.LocalReport.SetParameters(new ReportParameter[] { rpCurrentPath, rpCurrentPath, rpTime1, rpTime2, rpIndustryId, rpBuildingId });
}
到此,整个流程完成。

ReportView报表开发记录(一)的更多相关文章

  1. Grid++Report 报表开发工具

      Grid++Report 报表开发工具   版本 更新日期 大小 下载 说明 Grid++Repoert6.0.0.6 2015/08/08 16.0M [下载] 锐浪报表工具最新版本,新增功能说 ...

  2. JasperReport报表开发(一)--原理介绍

    1. JasperReport介绍 JasperReport 是一个开源的Java报表引擎,它不像其他的报表工具,例如Crystal报表是基于Java的,没有自己的表达式语法.Jasper Repor ...

  3. ActiveReport系列报表开发随笔收集

    转自:博客园 http://www.cnblogs.com/dahuzizyd/archive/2007/04/11/ActiveReport_All.html 使用ActiveReport for ...

  4. JFinal使用笔记3-注册和登录功能开发记录

    首页 开源项目 问答 代码 博客 翻译 资讯 移动开发 招聘 城市圈 当前访客身份:游客 [ 登录 | 加入开源中国 ]   当前访客身份: 游客 [ 登录 | 加入开源中国 ] 软件   土龙 关注 ...

  5. CozyRSS开发记录22-界面退化

    CozyRSS开发记录22-界面退化 1.问题1-HtmlTextBlock 找的这个HtmlTextBlock有很严重的bug,有时候显示不完全,有时候直接就崩了.然后看了下代码,完全是学生仔水平写 ...

  6. CozyRSS开发记录21-默认RSS源列表

    CozyRSS开发记录21-默认RSS源列表 1.默认列表 在第一次使用CozyRSS的情况下,我们让它内置五个RSS源吧: 2.响应RSS源的更新 先不处理RSS源列表项的点击,响应下下拉菜单里的更 ...

  7. CozyRSS开发记录20-CanResizeWithGrip

    CozyRSS开发记录20-CanResizeWithGrip 1.窗口样式 首先,WindowStyle有四种: 然后,对于窗口缩放的ResizeMode,也有四种,CanResize和CanRes ...

  8. CozyRSS开发记录19-窗口标题栏交互

    CozyRSS开发记录19-窗口标题栏交互 1.谈谈对mvvm解耦的看法 在使用mvvm时,如何操作窗口,这是一个问题.这个问题的关键点是:mvvm是把view和viewmodel解耦了的,很多写法一 ...

  9. CozyRSS开发记录18-番外之Atom1.0的支持

    CozyRSS开发记录18-番外之Atom1.0的支持 1.对CozyRSS.Syndication批判一番 由于我工作的主要开发语言是c++,所以会看到我的c#代码写得非常朴素,很多语法糖都没有用上 ...

随机推荐

  1. Mysql的Haproxy反向代理和负载均衡

    HaProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费.快速并且可靠的一种解决方案.应用到Haproxy主要是因为他免费,并且基于TCP和HTTP的应用代理. ...

  2. SQLite使用(三)&&核心API使用

    概述     SQLite提供了一系列接口供用户访问数据库,主要包括连接数据库,处理SQL,迭代查询结果等.本文会针对我们使用SQLite的主要场景,列出核心的API,详细介绍API的用法并给出代码用 ...

  3. python-socket模块

    socket server #!/usr/bin/env python # -*- coding:utf-8 -*- import socket ip_port = ('127.0.0.1',9999 ...

  4. WPF 自定义搜索框

      控件中的搜索图标下载地址:http://www.easyicon.net/1183666-Search_icon.html 搜索框设计过程比较简单: 1.先定义一个Rectangle作为背景 2. ...

  5. 高级查询---嵌套and分页

    高级嵌套语句: 子查询: 语句: select * from 表名 where 列名= ( 子查询语句 ) 注意:子查询语句必须放在小括号呢 可以使用< >=等运算符号,sql serve ...

  6. iOS CALayer应用详解(2)

    参考博客:http://blog.csdn.net/hello_hwc?viewmode=list 如果你对CALayer 还没有一个清晰的理解,欢迎看一下前面的博客: http://www.cnbl ...

  7. 通过form表单的形式下载文件。

    在项目中遇到问题,要求动态拼接uri下载文件.但是由于项目的安全拦截导致window.location.href 和 window.open等新建窗口的方法都不行. 无意间百度到了通过form表单来下 ...

  8. [LeetCode] Course Schedule 课程清单

    There are a total of n courses you have to take, labeled from 0 to n - 1. Some courses may have prer ...

  9. 第六次团队作业——Alpha冲刺之事后诸葛亮

    Deadline:2016-11-24 22:00pm Alpha冲刺,很多同学经历了"Learning by doing"的学一门新的编程语言.学Git.学做一个完整的项目.但是 ...

  10. python基础补漏-03-函数

    函数:一般来说就是 以功能划分的代码模块 [1] 内置函数 一般我们使用的模块 ---可以大概有个了解 大多数的用法都很简单 2 [函数返回值] 我们应该控制函数的每条分支. 也就是说 我们得到的函数 ...