RDLC报表系列(一) 简单的动态数据绑定和配置
RDLC系列链接
最近新换了工作,终于从单纯的开发中脱离出来,换成主运维和偶尔开发了,但还没有转行。本来打算找工作是想转行的,毕竟三线城市搞IT,以后真的不好说。最近经理让给财务做一个报表展示系统。由于之前一直都是做B2C的网站,流程和报表方面几乎没有涉猎。只能从博客园和csdn上来查找资料,由于大部门人都是用的水晶报表,RDLC的资料挺少。所以找了好久,也自己实验了好久,终于项目第一期做的项目差不多了,今天在家休息,就拿出点时间来整理一下。这个项目分两期,第一期主要是数据表的展示,第二期会有矩阵,折线图和柱状图的使用。所以,文章先把自己使用到的整理出来。参考的文章链接如下:
http://www.cnblogs.com/waxdoll/archive/2006/02/25/337713.html 蜡人张(想必做RDLC的都看过)
http://www.gotreportviewer.com/ GotReportViewer(很多功能都是照着它上面的实例来做的)
下面就按照我的步骤先来个简单的栗子吧。
1.新建项目,这个大家都会了吧。就不唠叨了,按照自己的习惯命名就好,我这里是demo1
2.然后是新建数据源,在网站或者项目上右击,添加—>新建项—>数据—>数据集,命名为demo1.xsd,点击确定
3.在数据源页面拖入DataTabel,按照下图设计表结构
4.新建报表,在网站或者项目上右击,添加—>新建项—>Reporting—>报表,命名为demo1.rdlc,点击确定
5.下面是重头戏,设计报表,在左侧的报表项中选择表,拖到右边的白色区域,会弹出如下对话框,输入名称选择数据源以及数据集,点击确认然后将需要显示的字段添加到表中即可。
6.新建一个页面,名称demo1.aspx,在页面设计中拖入ScriptManager和Reportview控件
7.然后开始写后台绑定数据的代码了,如下
demo.aspx.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Data.SqlClient;
using Microsoft.Reporting.WebForms; namespace rdlc1
{
public partial class demo11 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (IsPostBack == false)
{
FillDataToReport();
}
} private void FillDataToReport()
{ // DataTable dt1 = GetDataTabel(); //if (dt1.Rows.Count > 0)
//{ //} DataTable dt = new DataTable();
dt.Columns.Add("Dept", typeof(string));
dt.Columns.Add("CostCenter", typeof(string));
dt.Columns.Add("SalePrice", typeof(decimal));
dt.Rows.Add("IT", "", );
dt.Rows.Add("IT", "", );
dt.Rows.Add("E", "", );
dt.Rows.Add("E", "", );
dt.Rows.Add("L", "", );
dt.Rows.Add("L", "", ); ReportViewer1.LocalReport.ReportPath = "demo1.rdlc"; //显示报表
ReportViewer1.LocalReport.DataSources.Clear();
ReportViewer1.LocalReport.DataSources.Add(new ReportDataSource("dtDemo", dt));//要和设计报表时指定的名称一致,这里是dtDemo
ReportViewer1.LocalReport.Refresh(); } }
}
8.一切貌似都大功告成,F5运行,弹出如下报错。犹如晴天小霹雳,不要着急,仅需要配置下web.config即可
9.在web.config文件中添加添加httphandler节点即可,下面上我的web.config文件。
<?xml version="1.0"?>
<!--
有关如何配置 ASP.NET 应用程序的详细消息,请访问
http://go.microsoft.com/fwlink/?LinkId=169433
-->
<configuration>
<system.web>
<httpHandlers>
<add path="Reserved.ReportViewerWebControl.axd" verb="*" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
validate="false" />
</httpHandlers>
<compilation debug="true" targetFramework="4.0">
<assemblies>
<add assembly="Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
<add assembly="Microsoft.ReportViewer.Common, Version=10.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
<add assembly="Microsoft.Build.Framework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
<add assembly="System.Management, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/></assemblies></compilation>
</system.web>
</configuration>
10.F5运行,可以鸟,上图。
11.今天先整理一部分,后续的将抽空给大家呈现。主要是行分组和总计
RDLC报表系列(一) 简单的动态数据绑定和配置的更多相关文章
- RDLC报表系列(五) 简单的图表-柱状图
继续接上一篇的内容,本文主要是讲图标的内容,本文就是简单的图标,复杂的柱状图和折线图在下一文章中介绍. 数据源还是上文RDLC报表系列(四) 矩阵中的相同 1.还是继续使用demo2的文件
- RDLC报表系列--------初级报表
前面记录下了很多平时开发遇到的问题,RLDC之前也是不会,只会水晶报表,后来也慢慢的也上手了.把这些记录下来,以后用的着 1.打开VS添加新建项,选择Reporting,选择报表,后缀名为RLDC的名 ...
- RDLC报表系列(六) 多图表-折线图和柱状图
美好的一天开始了,这篇是RDLC系列的最后一篇文章,我的小项目也已经release,正在测试中. 1.新建demo3.aspx和demo3.rdlc文件 2.往rdlc文件中拖一个图标控件,在弹出的窗 ...
- RDLC报表系列--------报表分页显示标题
RDLC表格标题分页后,标题不显示网上的办法也不少.怎奈我试过很多,只有这个可以解决.留下代码以后使用 将报表以 XML的方式打开,搜索找到“详细信息” 在这个位置 报表分页标题设置<Tabli ...
- redis系列之------简单的动态字符串(SDS)
前言 Redis 没有直接使用 C 语言传统的字符串表示(以空字符结尾的字符数组,以下简称 C 字符串), 而是自己构建了一种名为简单动态字符串(simple dynamic string,SDS)的 ...
- RDLC报表系列--------行分组报表
报表分组开发步骤: 先看总体效果:如图 下面就做个看看... 1.先将数据处理成如下结构 如图 2.创建数据集DataSet.xsd,创建表->右键选择添加数据表->添加行(ctrl+L ...
- RDLC报表系列(二) 行分组
接上一篇文章的内容,今天来说的是行分组.还是打开demo1.rdlc界面,拖入一个文本框和表 1.在表中随便选择一个字段,不然在添加行组的时候不会自动提示.我这里是选择的Dept 2.在下面的行组中右 ...
- RDLC报表系列(四) 矩阵
继续接上一篇的内容,本文主要是讲矩阵的内容 用到的数据源如下: DataTable dt = new DataTable(); dt.Columns.Add("FiscalYear" ...
- RDLC报表系列一
1.报表项目搭建: 配置好后,单击Web服务URL:http://lg-20151517ryre/ReportServer 如果电脑系统打开的时候没有设置密码的话,此时打开有可能会出现需要登录名和密码 ...
随机推荐
- struts1面试题
由于找了很久的工作都没有找的,只能四处收集那个面试题的.和看面试题的 还有那个记忆力也不是很好了的,而那些公司面试的时候总会有一个面试题的! 在这里分享给大家(那个本来是想上传文件的,但是找不到的 ...
- HBase配置&启动脚本分析
本文档基于hbase-0.96.1.1-cdh5.0.2,对HBase配置&启动脚本进行分析 date:2016/8/4 author:wangxl HBase配置&启动脚本分析 剔除 ...
- QTestlib Manual翻译
Trolltech公司提供的QTestlib框架,是一种针对基于QT编写的程序或库的单元测试工具.QTestLib提供了单元测试框架的基本功能,并提供了针对GUI测试的扩展功能. 目录: QtestL ...
- (转)ubuntu下如何查看和设置分辨率
转载请注明出处: http://www.cnblogs.com/darkknightzh/p/5681159.html 原网址: http://www.2cto.com/os/201303/19397 ...
- Lucene学习总结之四:Lucene索引过程分析
对于Lucene的索引过程,除了将词(Term)写入倒排表并最终写入Lucene的索引文件外,还包括分词(Analyzer)和合并段(merge segments)的过程,本次不包括这两部分,将在以后 ...
- 【HTML5】在head 设置 meta 能更方便开发
<meta name="viewport" content="width=device-width, target-densitydpi=160dpi, initi ...
- HTML5简单入门系列(九)
前言 上篇本来应该就是最后一篇了,但是楼主总觉得没有写上一个简单应用,不算是完整的学习系列.所以增加一篇关于动画的应用,对一个开源动画的介绍(很基础,非楼主原创). 本篇介绍一个基于Canvas的发光 ...
- 基于VMware的eCos环境编译redboot(脚本配置redboot)
基于VMware的ecos,redboot及hello world(1)安装请参照[[ecos学习2]wmware运行redboot[方法二]--图形实现配置 ] (2)修改内存布局文件:~/i386 ...
- 转:nginx location匹配规则
location匹配命令 ~ #波浪线表示执行一个正则匹配,区分大小写~* #表示执行一个正则匹配,不区分大小写^~ #^~表示普通字符匹配,如果该选项匹配,只匹配该选项,不匹配 ...
- USB信号是什么类型的? 为什么在D+,D-处要接上拉下拉电阻呢,具体阻值要如何计算
USB协议要求的,1.5K上拉在D+时表示是全速设备,在D-表示不是全速设备有些方案里面(比如PNX5230)推荐D+/D-接下拉1M的电阻是为了提高数据传输稳定性的 ① usb有主从设备之分,主设 ...