RDLC报表使用基础手册.docx
《RDLC报表使用基础手册.docx》由会员分享,可在线阅读,更多相关《RDLC报表使用基础手册.docx(52页珍藏版)》请在咨信网上搜索。
1、RDLC使用总结1、 为何要使用RDLC报表(介绍)VS .NET开发中,用什么进行报表设计?可能回复是Crystal Report,当然,必需认可Crystal Report功效还是很强大,被Business Object收购以后,商业成份也在逐步增加,也形成了一定规模用户群。Visual Studio .NET进入本以后,Crystal Report和IDE结合更“紧密”了,最少我们看不到那个讨厌注册窗口了。不过,Microsoft似乎并不容忍在自己超级工具中竟然没有报表工具,于是Report Viewer Control出现了,我把它报表称为RDLC报表。在VS .NET 之前,SQL
2、Server Reporting Services中已经提供了一个被称为报表定义语言(Report Definition Language, RDL)语言;在VS .NET 中,Microsoft提供了针对这种报表设计器,并提供了在WinForm和WebForm中使用这种报表能力。Microsoft将这种报表后缀定为RDLC,RDL仍然是Report Definition Language缩写,那么C代表什么呢?C代表Client-side processing,凸显了它用户端处理能力。这种报表易用性和可定制性让我们完全有理由放弃Crystal Report,让我们来看看它强大功效吧:1) 简
3、单易用控件,尤其是Table控件,很方便字段在报表上排列;2) 灵活可定制性,用XML来描述一个报表相关一切,不用说了吧;3) 高度可编程性,在你项目中,甚至不需要有一个报表文件,经过代码就能够实现报表生成、预览和打印等一系列操作;4) 支持DrillThrough数据钻取功效;5) 导出Excel文件格式很完美,而且并不需要安装Excel;6) 数据源处理极其方便,开发人员能够自己接管数据库连接、取数,然后将数据结果赋值给RDLC数据集即可。7) 展示和数据分离,程序员更是能够编写一个RDLC设计器交有用户使用,这么用户就能够自行设计RDLC报表格式,程序员只负责定制数据接口即可。RDLC
4、MSDN:(VS.80).aspx2、 RDLC简单Demo本文全部RDLC例子全部是基于VS C#,全部ReportViewer处理模式全部是Local模式。本报表Demo显示上文中提到RDLC手册各节内容,下述为Demo具体steps。1) 新建项目,选择Windows应用程序项目类型,输入工程名称RDLCDev;2) 修改Form1窗体名称为FrmRdlcUserGuide,在工具箱数据Tab选项卡中选择ReportViewer控件,将其拖入到FrmRdlcUserGuide,默认命名为reportViewer1,调整ReportViewer控件大小和布局;3) 在处理方案资源管理器中选
5、择RDLCDev工程,鼠标右击RDLCDev工程,添加新建项,在添加新项模板中选择“报表”,取名为rdlcuserguide.rdlc,单击添加按钮,然后在处理方案资源管理器中RDLCDev工程下会增加一个rdlcuderguide.rdlc文件,而且会自动打开RDLC设计器;4) 在RDLC设计器中添加11个TextBox控件,1个作为标题,其它10个作为RDLC使用手册具体内容,对每个TextBox控件进行TextAlign、Color、BorderStyle、Font和TextDecoration等相关属性设置,设计完成以后,大致以下图所表示。5) 在FrmRdlcUserGuide窗体
6、Load事件中添加下述代码 private void Form1_Load(object sender, EventArgs e) this.reportViewer1.ProcessingMode = Microsoft.Reporting.WinForms.ProcessingMode.Local; this.reportViewer1.LocalReport.ReportPath = rdlcuserguide.rdlc; this.reportViewer1.RefreshReport(); 6) 编译、运行RDLCDev工程,运行结果大致以下图所表示。3、 RDLC常见控件介绍RDL
7、C设计工具箱上总共有9种控件:文本框(TextBox)、折线(Line)、表(Table)、矩阵(Matrix)、矩形(Rectangle)、列表(List)、子报表(SubReport)、图表控件(Chart)、图像控件(Image)。下图ctlsDemo.rdlc设计器所表示为全部控件设计演示。1) 因为表格控件、矩阵控件、列表控件和图表控件必需填充数据集,所以把全部控件布局完成以后,创建一个数据集。处理方案资源管理器中,选中RDLCDev工程,右击添加新建项,在新建项类型模板里选择“数据集”,取名“ctlsDemo.xsd”,单击“添加”。ctlsDemo.xsd添加完成以后,在处理方案
8、资源管理器中会增加一个ctlsDemo.xsd文件,并前VS IDE会自动打开ctlsDemo.xsd设计页面。在设计页面中右击,添加Datatable,将其命名为vSales,该表描述是产品销售额信息,为vSales表添加列,列信息以下: ProdCatSystem.String SubCatSystem.String OrderYearSystem.Int32 OrderQtrSystem.StringSalesSystem.Double2) 文本框控件、折线控件、矩形控件使用相对简单,这里不细说;3) Image控件,现在RDLC设计器模式下,选择“报表”菜单,“嵌入图像”,在“嵌入图像
9、”对话框中,载入一个当地图像文件即可。然后设置Image控件Source属性为Embedded,设置Value属性为刚才处理嵌入图像即可。当然还有别方法能够显示图像,大家能够谷歌一下,关键字为RDLC、嵌入图像;4) 图表控件,使用图表控件一个关键是要设置好图表属性页面中数据TAB页相关内容。关键有值、类别组和序列组定义,大家能够参考Demo;5) 表格控件、矩阵控件和子报表控件,在后续内容中会具体介绍;4.1 表格控件使用介绍1) Table控件是RDLC报表显示数据一个关键控件,相关Table控件,在微软提供RDLC规范里有具体介绍,其大致内容能够用下述一张类UML图来表示;2) 新建报表
10、文件,命名为ctlTableDemo.rdlc;3) 在ctlTableDemo.rdlc设计器中,拖入Table控件,默认情况下是3行3列,其中第1行为表头行(我们了解为列标题行),第二行为具体信息行(我们了解为报表内容展示区域),第三行为表尾行(我们了解为汇总区域)。能够整行选中,然后右击鼠标添加行或删除行,也能够整列选中,然后右击鼠标添加或删除列。上文中提到数据集合有5个字段,所以需要5列来显示,为此需要增加两列。4) 在数据源窗口中(假如没有显示话,选择【数据】菜单下【显示数据源】即可)选择上文中创建ctlsDemo.xsd数据集,将ProdCat、SubCat、OrderYear、O
11、rderQtr和Sales分别拖入到Table控件具体信息行不一样列中去。5) 设置标题行文字显示全部居中,Sales内容显示右对齐,ProdCat、SubCat、OrderYear、OrderQtr和Sales文本框字体颜色全部设置成Blue,Sales文本框因为显示内容为销售额,所以需设置数字显示格式,小数位数。鼠标右击Sales文本框,选择【属性】,在文本框属性窗口中,选择格式Tab页,在格式代码处,选择数字1,234.00格式即可,选择完成以后该文本框数字就以逗号千分位作为分割符,保留2位小数显示,效果以下图所表示。6) 插入一个组实现分组统计功效。选中整行,鼠标右击,选择【插入组】,
12、弹出分组和排序属性对话框,设置分组名称、分组方法、是否显示组头或组尾等属性即可,本文分组设置以下:分组名称:table1_Group1分组表示式:=Fields!ProdCat.Value;=Fields!SubCat.Value;=Fields!OrderYear.Value,实现产品年度销售额汇总统计功效。不显示组头、显示组尾(至于组头、组尾是个什么样东西,大家只要动手试一下就一目了然了)在textbox15中输入汉字“累计”,在textbox16文本框中输入累计表示式=Sum(CDbl(Fields!Sales.Value),设置完以后效果以下图所表示。7) 新建窗体FrmCtlTabl
13、eDemo,然后在该窗体上添加ReportViewer控件,在窗体FrmCtlTableDemo代码窗口里输入以下代码: private void FrmCtlTableDemo_Load(object sender, EventArgs e) this.reportViewer1.ProcessingMode = Microsoft.Reporting.WinForms.ProcessingMode.Local; this.reportViewer1.LocalReport.ReportPath = rdlcctlTableDemo.rdlc; / reportViewer1.LocalRe
14、port.DataSources.Add(new ReportDataSource(ctlsDemo_vSales, LoadData(); / this.reportViewer1.RefreshReport(); private DataTable LoadData() DataSet dataSet = new DataSet(); dataSet.ReadXml(datactlsDemo.xml); return dataSet.Tables0; 8) 运行效果以下图所表示4.2 矩阵控件使用介绍1) 矩阵控件关键用于显示CrossTable之类报表,所以其列数能够是Static,也能
15、够是Dynamic而且Can grow,相关矩阵控件,在RDLC协议规范里也有介绍,其大致内容能够用下图表示。2) 新建报表文件,命名为ctlMatrixDemo.rdlc;3) 在ctlMatrixDemo.rdlc设计器中,拖入Matrix控件,默认情况下是2行2列,左上角单元格为空白区域(通常见来显示报表摘要信息如产品/年度等),右上单元格显示为“列”,单击此处能够增加列分组,左下单元格显示为“行”,单击此处能够添加行分组,右下单元格显示为“数据”,单击此处能够添加静态行、静态列。 4) 在矩阵左上角单元格空白区域拖入矩形控件,然后在该矩形控件中拖入一个折线控件和两个文本框控件,折线当做
16、矩形对角线,两个文本框内容为产品和年度分布在折线两侧。5) 增加两个行分组,分别为matrix1_RowGroup1和matrix1_RowGroup2,matrix1_RowGroup1表示式为=Fields!ProdCat.Value,matrix1_RowGroup2表示式为=Fields!SubCat.Value。6) 增加两个列分组,分别为matrix1_ColumnGroup1何matrix1_ColumnGroup2,matrix1_ColumnGroup1表示式为=Fields!OrderYear.Value,matrix1_ColumnGroup2表示式为=Fields!Or
17、derQtr.Value。7) 在“数据”单元格中编辑表示式=Sum(CDbl(Fields!Sales.Value)8) 设计完以后,效果以下图所表示;9) 新建窗体FrmCtlMatrixDemo,然后在该窗体上添加ReportViewer控件,在窗体FrmCtlMatrixDemo代码窗口里输入以下代码: private void FrmCtlMatrixDemo_Load(object sender, EventArgs e) this.reportViewer1.ProcessingMode = Microsoft.Reporting.WinForms.ProcessingMode.
18、Local; this.reportViewer1.LocalReport.ReportPath = rdlcctlMatrixDemo.rdlc; / reportViewer1.LocalReport.DataSources.Add(new ReportDataSource(ctlsDemo_vSales, LoadData(); / this.reportViewer1.RefreshReport(); private DataTable LoadData() DataSet dataSet = new DataSet(); dataSet.ReadXml(datactlsDemo.xm
19、l); return dataSet.Tables0; 10) 运行效果以下图所表示4.3 子报表控件使用介绍子报表作为主报表一个补充,在显示明细内容时候比较管用,本文从怎样填充子报表数据,怎样传输参数两方面介绍子报表怎样使用。1) 新建RDLC报表,命名为subReportDemo.rdlc;2) 在subReportDemo.rdlc设计器中,拖入一个文本框和一个子报表控件;3) 设置文本框文本显示为“子报表控件演示”;4) 设置子报表控件属性,关键设置其“子报表”值,这里设为上文讲到ctlTableDemo报表,效果以下图所表示;5) 新建一个窗体FrmSubReportDemo,添加以
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- RDLC 报表 使用 基础 手册
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【a199****6536】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【a199****6536】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。