- 浏览: 244812 次
- 性别:
- 来自: 葡萄牙
文章分类
最新评论
-
lightbulb:
...
jQuery中的动画与效果 -
kendezhu:
opportunity 写道 谢谢kendezhu分享,今天正 ...
jQuery 获取和设置select下拉框的值 -
opportunity:
谢谢kendezhu分享,今天正好用上了!
jQuery 获取和设置select下拉框的值
水晶报表
我们先来看看在ASP.NET中使用水晶报表需要哪些组件:CrystalReportViewer,CrystalReportSource及以
rpt为扩展名的报表文件。
我们可以将以上组件拿来与数据绑定控件,数据源控件来做一个类比:
CrystalReportViewer就相当于数据绑定控件,用来显示最后的报表。
CrystalReportSource就相当于数据源控件,但不是直接在它身上直接配置数据源,而是通过rpt报表文件。
在页面上拖入上述俩控件就会自动引入CrystalDecisions.Web
rpt报表文件,创建该文件后就可以在报表设计器中配置数据源了,创建该文件后就会自动引入
CrystalDecisions.CrystalReports.Engine,CrystalDecisions.Enterprise.Framework,CrystalDecision
s.Enterprise.InfoStore,CrystalDecisions.Shared
使用水晶报表有两种模式:
1.PULL模式(拉模式)
被请求时,水晶报表直接根据指定的驱动连接数据库然后组装这些数据。
创建rpt报表文件后,在VS左侧就会出现"字段资源管理器",在"字段资源管理器"中右键"数据库专家"->"创
建新连接"->然后将你选的数据库里的表添加进来。
2.PUSH模式(推模式)
参考:
http://www.cnblogs.com/xumingming/archive/2008/07/31/1257106.html
http://blog.csdn.net/chuxue1342/article/details/1935948
http://dotnet.chinaitlab.com/ASPNET/530751.html
http://topic.csdn.net/u/20090626/17/8090bf70-bed9-41ac-9e09-c0a6a7ab4cb8.html?59922
RDLC报表
虽然水晶报表功能很强大,但由于其使用过于复杂并且需要付费,RDLC报表的优势凸显出来:微软自家的东西,使用简单,功能也很好。
首先创建RDLC报表文件(后缀名是.rdlc),之后VS左侧就会出现"网站数据源",而且你打开工具箱看看,会发现工具箱里都是些"文本框"、"表"、"折线图"、"矩阵"等。在"网站数据源"上添加新数据源(该过程会创建一个dataset文件,你可以在设计器里拖入你想要显示的表),或者你随便创建一个dataset文件都会在"网站数据源"内显示。rdlc报表文件实际上是一个XML文件,可以用记事本打开看看。
之后你就可以在"网站数据源"的dataset里拖动我们想要的字段到rdlc报表里了。
添加reportviewer控件:在.NET Framework组件选项卡下选中命名空间为Microsoft.Reporting.WebForm下的ReportViewer。
然后在reportviewer控件的任务列表里选择刚才建立的rdlc报表文件,这时VS会根据你的rdlc报表文件生成相应的ObjectDataSource来为其提供数据,注意有时会出现 未能找到在 ObjectDataSourc的 TypeName 属性中指定的类型 的错误 不知是为什么这是其TypeName的命名空间不对(可能是不全或其他原因),所以还是人工查找该TypeName指向的类的完全命名空间吧。
运行后貌似对chrome浏览器不是很支持,添加的字段都挤在一起了。
向报表添加报表项(表,矩阵等。在下面链接中被称为"数据区域")
http://msdn.microsoft.com/zh-cn/library/ms252086(v=vs.80).aspx
表数据区域 http://msdn.microsoft.com/zh-cn/library/ms251659(v=vs.80).aspx
矩阵数据区域 http://msdn.microsoft.com/zh-cn/library/ms251709(v=vs.80).aspx
http://www.cnblogs.com/Gerry-BJ/archive/2008/05/13/1195450.html
列表数据区域 http://msdn.microsoft.com/zh-cn/library/ms251742(v=vs.80).aspx
图表 http://msdn.microsoft.com/zh-cn/library/ms252128(v=vs.80).aspx
在将图表添加到报表时,需要将某些字段拖到某些位置:
数据字段(通常的Y轴,代表"值",如多少分数 或 多少销售量)
类别字段(通常的X轴,代表"谁",如某同学 或 某公司)
序列字段(如果"谁"只有一个"值"就无所谓了,但如果有多个"值"(如多门课 或 多季度),如果不指定序列字段就会将"谁"的这些"值"全加在一处 如果指定了 就很清晰(如小明语文多少分数学多少分 或 某公司第一季度销售量是多少第二季度销售量是多少))
RDLC表达式 http://www.cnblogs.com/jack86514/archive/2009/10/17/1585254.html
http://www.cnblogs.com/hubcarl/archive/2009/10/08/1579029.html
有时可能需要使用联合查询得到的数据源,可以在上面建立的dataset文件中右键"添加"->"TableAdapter"然后在查询生成器里使用联合查询的语句。这时别忘了为reportviewer控件重新根据你的rdlc报表文件生成相应的ObjectDataSource。
但是如果按照上面的方法生成报表的话,我们就很难与之有个交互性,这就需要使用RDLC报表自定义数据集了http://www.cnblogs.com/luozhanbin/archive/2008/07/13/1241991.html
代码很简单,但有几点要说
protected void Button1_Click(object sender, EventArgs e)
{
SqlConnection conn = new SqlConnection(@"Data Source=.\sqlexpress;Initial
Catalog=GA_ONLINEEXAM.MDF;Integrated Security=True");
SqlCommand cmd = new SqlCommand("select st.sname,sc.thescore from student
st,score sc where sc.sid=st.id and paperid=@paperid", conn);
cmd.Parameters.AddWithValue("paperid", TextBox1.Text); 此处有个交互性
conn.Open();
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds);
conn.Close(); 设置报表文件,要用物理路径
this.ReportViewer2.LocalReport.ReportPath = Server.MapPath("Report2.rdlc");
ReportViewer2.LocalReport.DataSources.Clear(); 清空原先的数据源
ReportDataSource rds = new ReportDataSource(); 新的数据源类 using Microsoft.Reporting.WebForms
此处名字要注意,它是数据集里的一个表名,自动命名就是数据集名_表名(这个可以通过切换到rdlc报表文件界面-菜单栏-报表-数据源 里查看和重命名)
rds.Name = "DataSet1_DataTable1";
rds.Value = ds.Tables[0];
ReportViewer2.LocalReport.DataSources.Add(rds); 添加新数据源
ReportViewer2.LocalReport.Refresh(); 刷新显示报表
}
但有个问题,我们如何控制报表的样式格式呢?所以我们之前其实还是要通过建立数据源(按照此处的话有个表名是DataSet1_DataTable1)然后把我们想要的字段拖到报表设计器中来设置样式格式的,只不过我们在真正用时不是使用这个数据源,而是使用程序中创建的数据源,所以我们自定义的数据集中也必须出现我们在报表设计器中拖动的字段,否则会出错。
参考:
http://wangjierui.blog.51cto.com/186879/39772
http://www.cnblogs.com/waxdoll/archive/2006/02/27/339115.html
http://blog.csdn.net/huc87/article/details/4021080
http://www.cnblogs.com/jack86514/category/204494.html
发表评论
-
ASP.NET中的缓存技术
2011-02-21 22:54 1435http://www.cnblogs.com/ltp/arch ... -
异常处理和日志追踪
2010-12-21 12:25 1264关于异常的处理想必 ... -
ASP.NET状态管理
2010-12-13 16:10 1341开发WinFrom的程序员可能不会在意维护应用程序 ... -
关于aspx页面类继承于cs页面类
2010-10-19 17:01 4944cs页面类继承自System.Web.UI.Page类,一般和 ... -
使用数据库文件
2010-10-14 19:55 885以前很多项目都是连接的SQLServer数据库里的数据库 ... -
C#与Javascript中时间的格式化操作
2010-09-15 16:41 1667C#里时间格式化 一般的DateTime.Now.ToStr ... -
ASP.NET页面生命周期
2010-08-25 02:53 894http://www.cnblogs.com/KingStar ... -
获得漂亮的Flash|Javascript钟表代码
2010-08-24 16:06 1599http://www.clocklink.com ht ... -
ASP.NET登录控件延伸(个性化)
2010-08-24 03:06 1892既然由登录控件涉及到了Membership,那么就不得不 ... -
程序集(类库,java里也叫类库,对于NetBean位于其库里)与命名空间(相当于java里的包)
2010-08-23 21:23 1520http://book.51cto.com/art/20090 ... -
Temporary ASP.NET Files
2010-08-23 21:05 739http://book.51cto.com/art/20090 ... -
webapplication与website
2010-08-22 16:59 908http://blog.csdn.net/ups216/arc ... -
概念,依旧是概念……csproj文件是做什么用的?
2010-08-22 16:37 1461csproj是.net项目文件的后缀名,它是C Sharp P ... -
web application中使用Profile应该注意的问题
2010-08-22 14:04 652http://hi.baidu.com/windlhj/blo ... -
.Net 2.0 中的发送邮件实现C#代码
2010-08-19 16:15 1552http://hi.baidu.com/ganggang021 ... -
GridView 设置格式化 DataFormatString
2010-08-08 00:23 822http://www.cnblogs.com/emanlee/ ... -
利用 CSS Friendly Control Adapters 将 ASP.NET 控件转为符合WEB标准的、有语意的HTML页面 CSS 样式表控制。
2010-08-02 19:57 955http://www.cnblogs.com/wilsonwu ... -
App_data,App_code, bin,App_Browser,App_Themes,App_GlobalResources,App_LocalResou
2010-08-02 19:52 911http://blog.csdn.net/jjjjj10231 ... -
ASP.NET中的站点导航技术
2010-07-29 16:31 22951.站点地图 (站点地图文件) 是一个名为Web ... -
DropDownList1_SelectedIndexChanged不执行
2010-07-26 15:52 1128http://blog.sina.com.cn/s/blog_ ...
相关推荐
ASP.NET报表技术是一种用于在Web应用程序中生成和呈现数据的强大工具。在"asp.net 报表(套用Excel模板)打印"这个主题中,我们主要关注如何利用ASP.NET结合Excel模板来创建动态、格式化的报表,并实现打印功能。这...
ASP.NET报表源码是开发基于Web的业务应用中不可或缺的一部分,尤其在数据分析、统计和展示环节。本资源“asp.net报表源码”提供了一个利用ASP.NET框架与Crystal Reports结合实现的示例项目,名为“CrystalTest”。这...
ASP.NET报表制作是Web应用程序开发中的重要组成部分,用于展示数据并提供数据分析能力。在这个领域,开发者需要理解如何有效地设计和实现各种类型的报表,包括表格、图表、交叉表、仪表盘等,以满足业务需求。本篇...
通过研究这个源代码,我们可以深入了解ASP.NET报表开发的技术细节和最佳实践。 1. ASP.NET基础:ASP.NET是微软公司开发的Web应用程序框架,它基于.NET Framework,提供了丰富的功能来构建动态网站、Web应用和服务。...
ASP.NET报表系统是一种基于微软的ASP.NET框架构建的用于生成、展示和管理数据报表的应用程序。这个技术允许开发者创建交互式、动态的报表,能够从各种数据源获取数据,并以直观的方式呈现给用户。在ASP.NET报表系统...
ASP.NET报表控件是开发Web应用程序时用于生成和展示数据报表的重要工具。这些控件能够帮助开发者快速且高效地创建各种复杂的数据可视化效果,如图饼、过程线和各种报表,以便用户可以清晰地理解统计数据和查询结果。...
为了进一步增强报表的功能,你可以使用第三方报表工具,如Crystal Reports或DevExpress的ASP.NET报表组件。这些工具提供更丰富的报表设计和格式化选项,以及复杂的计算和过滤功能。它们通常有拖放式的报表设计器,...
【葡萄城ASP.NET报表控件】是专门为ASP.NET开发者设计的一款高效、强大的报表工具,它提供了丰富的报表设计功能,能够帮助开发人员轻松实现各种复杂的报表布局和数据分析展示。这款控件100%可用,表明它经过了严格的...
在ASP.NET中,报表是展示数据的重要方式,尤其在数据分析、业务监控和决策支持等方面起着关键作用。本篇文章将详细讲解ASP.NET中涉及的XLS报表、水晶报表、PDF导出以及饼状图和柱状图的生成。 1. **XLS报表**: - ...
☆ 资料说明:☆ 《ASP.NET夜话》 周金桥 著 随书源代码 ☆ 章节清单:☆ ...第18章 — ASP.NET报表技术 第19章 — .NET的文件IO体系和静态页面生成技术 第20章 — 数据安全技术 第22章 — 综合实例
在ASP.NET报表中,饼状图和柱形图是非常常见的图表类型。饼状图用于表示各部分占总体的比例,通过扇形区域的大小直观展示数据的分布情况。而柱形图则适合比较不同类别的数据值,每个柱子的高度代表一个类别的数值,...
Asp.net 报表图(实现),经常会用到的实用报表图的实现,统计报表,业绩报表。
1. AJAX支持:为了提高用户体验,可以使用ASP.NET AJAX技术实现图表的异步更新,无需刷新整个页面。 2. 移动优化:考虑到移动设备的屏幕尺寸,可能需要调整报表布局,使之适应不同分辨率的设备。 3. 报表交互性:...
这个"ASP.NET简单报表实例"显然包含了多种用于数据展示和处理的技术,其中包括GridView、CheckBoxList、Excel导出以及JavaScript的应用。下面我们将逐一探讨这些知识点。 1. GridView: GridView是ASP.NET中的一个...
ASP.NET中的RDLC(Report Definition Language for Client Applications)报表是一种强大的工具,用于在Web应用程序中创建和展示数据报告。RDLC报表与微软的SQL Server Reporting Services(SSRS)紧密关联,但它们...
ASP.NET水晶报表是一种广泛用于创建和展示数据报告的工具,尤其在Web应用程序中。它结合了强大、灵活的报告设计功能和高效的数据显示能力,使得开发者能够轻松地在ASP.NET环境中生成复杂的业务报告。本示例将详细...
【ASP.NET水晶报表详解】 ASP.NET水晶报表是用于在Web应用程序中生成动态、交互式报告的强大工具。这个视频教程系列,特别是"ASP.NET水晶报表视频教程二",旨在帮助开发者深入理解和熟练掌握如何在Visual Studio...
ASP.NET报表设计是Web开发中的一个重要领域,它用于呈现数据以供分析和决策。FusionCharts是一款流行的JavaScript图表库,可以与ASP.NET结合使用,为Web应用提供丰富的交互式图表功能。这款工具允许开发者轻松地将...
ASP.NET图形报表是一种在Web应用程序中展示数据的强大工具,它能够以图表...通过以上这些技术和方法,开发者可以使用ASP.NET构建出功能强大、美观易用的图形报表,满足企业或个人在数据分析和决策支持方面的各种需求。
在IT行业中,Asp.Net是一种基于.NET Framework...综上所述,Asp.Net图形报表的开发涵盖了数据处理、可视化设计、交互性实现等多个方面,开发者需要掌握相关技术和工具,以创建出既实用又美观的图形报表,满足业务需求。