Reportviewer_报表
reportviewer
reportviewerReportViewer文档1. 介绍ReportViewerReportViewer是一个用于创建、显示和管理报表的控件。
它是由Microsoft开发的工具,可用于在Web或Windows应用程序中生成和呈现报表。
ReportViewer提供了一个功能强大的界面,使用户能够轻松地创建和管理报表。
2. ReportViewer的功能ReportViewer提供了多种功能,使用户能够创建、显示和管理报表。
以下是ReportViewer的一些主要功能:a. 报表设计工具:ReportViewer提供了一个报表设计工具,用户可以使用该工具创建自定义报表。
用户可以选择从多种预定义报表模板开始,然后根据自己的需求进行修改和定制。
报表设计工具提供了多种元素和控件,如文本框、图表、表格等,使用户能够创建丰富多样的报表。
b. 数据源连接:ReportViewer支持多种数据源,包括数据库、Web服务、XML文件等。
用户可以轻松地连接到不同的数据源,并将数据源中的数据用于报表的生成和呈现。
c. 报表预览:ReportViewer提供了一个实时预览功能,用户可以在报表设计过程中随时预览报表的效果。
这使得用户能够快速调整报表的布局和样式,以获得最佳的呈现效果。
d. 报表导出:ReportViewer支持多种报表导出格式,包括PDF、Excel、Word等。
用户可以将报表导出为这些格式,以便在不同的应用程序或平台上使用和共享报表。
e. 数据筛选和排序:ReportViewer允许用户对报表中的数据进行筛选和排序。
用户可以根据自己的需求定义筛选条件,并对报表中的数据进行排序。
这使得报表更加灵活和易于分析。
3. 使用ReportViewer创建报表使用ReportViewer创建报表非常简单。
以下是使用ReportViewer创建报表的一般步骤:a. 定义报表数据源:首先,用户需要定义报表的数据源。
reportviewer
rdlc 报表的使用第一阶段【添加数据集】首先在微软官网下载了报表并安装之。
打开VS2010,在项目中添加“新建项”,在“已安装的模版中”选择“Reporting”—》“报表”,在最下方键入名称。
打开“工具箱”,可以按照自己的需求,或拽和编辑各种控件。
也可以在“报表数据”为报表添加“内置字段”和“参数”。
打开“报表数据”的操作:“视图”—》最后一项“报表数据”,或者按“Ctrl + Alt + D ”。
既然是报表,当然离不开数据了。
我这里选择用数据库作为数据源。
在报表数据工具栏中,点击“新建”—》“数据集”会弹出一个新建数据集的界面:这里选择“数据库”,下一步,“数据集”,点击“新建连接”,选择好服务器名、密码和数据库。
测试一下:成功后,确定。
选择你所需要的表、视图、函数或存储过程。
确定后,返回到这个界面,你可以更改数据集的名称、选择具体的表、视图等。
然后确定。
这样在“报表数据”栏中就可以看到新建的数据集了。
第二阶段【设计报表】介绍一些设计报表的工具箱,在VS2010 IDE左侧“工具箱”中的报表项,文本框用于可以显示文字、传递参数。
表和矩阵则可以用来存放数据。
不同的是表是针对于“列数固定、行数可变的数据”设计的,而矩形则是针对于“列数与行数均可变”的聚合数据设计的。
一般数据库中的表字段都为引文,但是显示的时候,都用中文,为了保证数据隐秘,也行该用中文。
说说表中的实现,对于行标题,直接修改即可,而数据行可以修改,也可以不修改。
数据行由字段占位符构成,可以右击编辑占位符的属性来实现显示中文。
在查询报表时,占位符会被真实数据所代替。
,也可以编辑表达式,用!符号来做找到字段属性。
矩阵跟列表框差不多。
矩形可以作为其他报表项的容器,列表则是用于显示每一个组或数据行重复的数据项。
列表框可以通过编辑矩形属性,在可见性中绑定报表中的数据项。
图像则是用于显示图片的,可以手动导图。
对于需要汇总比较数据的用户来说,图标则是你的不二选择。
利用Reportviewer生成RDLC报表
利用ReportViewer生成RDLC报表报表是应用程序,特别是数据库系统中的重要功能。
在Visual Studio 2010中,自带的ReportViewer控件,可以满足常用报表功能的实现,而且使用方便,以下就将介绍利用VS2010中的ReportViewer控件创建RDLC报表,并在winform程序中调用的实例,使用C#语法。
第一步:创建一个Windows应用程序在Visual Studio 2010中,选择“文件”菜单,新建-“项目”,从已安装模板中选择Visual C#,从中间的项目类型中,选择“Windows窗体应用程序”;在名称栏中,为项目指定名称;在位置栏中,指定想要保存的目录。
完成之后,项目中会有一个Form1,以下从对它的窗体设计器开始讲解。
像下面这样修改Form1的属性,当然也可以保留默认属性:Form1.Text = "MS Reporting Services 101 with Smart Client"Form1.Size = 750, 300第二步:为窗体(Form)添加报表查看器(Report Viewer)报表查看器,我们可以把它理解为显示和预览报表的容器。
它不仅可预览输出报表,还可帮助将报表信息生成各种格式(PDF或Excel等等),当然也包括打印功能。
请按如下步骤在Form1上放置好报表查看器控件:依次找到工具箱(ToolBox)――报表--报表查看器(ReportViewer),并把它拖到Form1上。
这会创建一个名为reportViewer1的新实例。
通过设置reportViewer1.Dock = Fill,报表查看器将会填充窗体的整个区域,以显示报表。
在完成第一步与第二步之后,窗体看起来应该如图1所示:图1第三步:为项目添加数据集(DataSet)数据集是伴随报表查看器而来的,它保存并提供从数据源而来的原始数据,我们便可对这些原始数据进行处理或在C#程序中输出。
ReportView报表的使用
ReportView报表的使⽤今天刚接触报表,花了好久时间,⾛了很多弯路,感觉应该写出来和⼤家分享下,前车之鉴。
⾸先创建项⽬,添加新建项⽬—数据—数据集,在⼯具箱中拖⼊DataTable控件,右击控件添加列,设置列名添加新建项⽬—Reporting—报表,得到.relc结尾的⽂件,在右侧报表数据⾥,右击数据集—添加数据集右击—插⼊表(默认为2⾏3列的表),修改名的hander为编号、姓名、年龄,在第⼆列点击选择相对应的数据集⾥的数据*需要注意将Report1.rdlc⽂件的⽣成操作属性改为内容接下来新建⼀个类,写⼊代码public class Person{public int ID { get; set; }public string Name { get; set; }public int Age { get; set; }}接着新建web窗体,在窗体⾥写⼊三个控件:ReportView、button控件和ScriptManager(没什么⽤,但没有这个控件,会报错)<div><asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager><rsweb:ReportViewer ID="ReportViewer1" runat="server" Height="386px" Width="619px"></rsweb:ReportViewer><asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="确定" /></div>之后给button控件的点击时间写⼊代码:1 protected void Button1_Click(object sender, EventArgs e)2 {3 /*先清空原来数据集*/4 ReportViewer1.LocalReport.DataSources.Clear();5 /*设置报表⽂件*/6 ReportViewer1.LocalReport.ReportPath = @"D:\task\Exercise1\Learn\Report1.rdlc";7 /*数据集的填充*/8 ReportDataSource rds = new ReportDataSource("DataSet1", loadData());9 /*将数据集添加到本地报表*/10 ReportViewer1.LocalReport.DataSources.Add(rds);11 /*刷新报表显⽰*/12 ReportViewer1.LocalReport.Refresh();13 }注意第6⾏的地址⼀定不能写错,否则会报错最后写⼊l对象包含的数据loadData1 private List<Person> loadData()2 {3 List<Person> per = new List<Person>();4 for (int i = 0; i < 5; i++)5 {6 per.Add(new Person() { ID = i + 1, Name = "name", Age = i + 18 });7 }8 return per;9 }启动程序,完成!。
简单介绍如何用ReportingService制作报表
简单介绍如何⽤ReportingService制作报表1)在安装好Reporting Service后,打开Visual studio .net ,选择新建项⽬,选择建⽴商业智能项⽬,选择新建⼀个报表项⽬,命名为reportservice1,再选确定,如下图: 2)之后,在解决⽅案资源管理器中,⿏标右键点选共享数据源,选择"添加新数据源",再选择SQL server服务器所在的位置,并选择使⽤Northwind数据库,按确定,这样,将建⽴⼀个新的共享数据源northwind.rds(当然,可以为该数据源改名),创建共享数据源的⽬的是为了在今后的报表设计中⽅便地引⽤该数据连接。
3)在"解决⽅案资源管理器"中右键单击"报表",指向"添加",然后单击"添加新项"。
在"添加新项"中,单击"报表"。
在"名称"框中,键⼊"report1.rdl",然后单击"打开"。
将打开⼀个视图,其中包含"数据"、"布局"和"预览"选项卡。
如下图所⽰:4)为了能让报表和数据库连接,必须新建⼀个数据集。
在顶部的"数据集"下拉列表框中,,点选该下拉列表框,选择"新建数据集",此时将显⽰"数据集"对话框,由于之前我们已经建⽴了共享数据源,因此,在弹出的窗⼝中,我们看到已经存在的数据源northwind,也可以对该数据集重新命名,这⾥我们保持数据集的名dataset1不变,同时看到,可以选择要查询的命令类型是⽂本还是存储过程,可以在下⾯的查询字符串中输⼊SQL语句或者存贮过程。
这⾥我们不做选择,直接按确定,如下图:5)之后,会出现下图的数据设计窗⼝,我们可以直接输⼊sql 查询语句:select * from orders,之后按!号按钮,执⾏该sql 语句。
VS2010报表ReportViewer数据的生成
VS2010报表ReportViewer数据的生成-添加程序运行过程中生成表字段与参数开发环境:vs2010报表工具:ReportViewer.exe 这个要另外安装开发说明:由于在开发、运行过程中,会生成一些汇总统计表,这样的表不一定会以数据库表的形式固定存在,因此,会以运行过程中,用DataSet\DataTable、参数的方式传递给ReportViewer。
关键点:1、ReportViewer在制作报表时,要生成用户数据,需要添加数据表,在制作过程中,调用该表。
但,如果该表是通过参数传递过来,会无法读取该表,因此,需要手工添加一个临时表给它。
2、临时表生成,解决,添加新建项方案中,添加新建项,数据-数据集,工具栏,添加table,再添加键,生成一个可供调用的临时表。
3、VS2010在制作表过程中,菜单会出现在两个地方,一个在主菜单出现,下拉后内容极少,不包括数据参数,一个在【视图】中,打开,在工具栏会出现数据参数等更多内容。
4、有了临时表、参数,就可以布局制作报表了,统计时间是数据参数传递的。
5、统计表的数据传输与参数参数程序注:传递数据表Microsoft.Reporting.WinForms.ReportDataSource r = new Microsoft.Reporting.WinForms.ReportDataSource(); = "my_dt";r.Value = da;传递的表名称要与设计时的名称一致。
this.reportViewer1.LocalReport.DataSources.Clear();this.reportViewer1.LocalReport.DataSources.Add(r);传递参数ReportParameter p = new ReportParameter("dt", dt);this.reportViewer1.LocalReport.SetParameters(new ReportParameter[] { p });_ds是通过中间层传输过来。
rdlc打印时多出空白页面(reportviewer)
rdlc打印时多出空⽩页⾯(reportviewer)
输⼊简体字,点下⾯繁体字按钮进⾏在线转换.RDLC报表设计好后,在ReportViewer预览报表时,页数都正常;但在切换為整页模式时,常造成多了不少空⽩页出来。
第⼀时间觉得不可思议,在ReportViewer看来正常,怎可能在整页预览时,格式会跑掉?如果在整页预览时格式跑掉,那在列印时也⼀定是这样的情形。
ReportViewer会将RDLC所设计的报表档显⽰其中,但和实际纸张列印时,并不是如此,因此时就要检查RDLC报表本⾝的⼤⼩。
1.先⾄Report.rdlc报表设计的页⾯,选择功能表上的[报表]->[报表属性],在[配置]的页籤中记录著输出报表的纸张⼤⼩,预设应為A4直式的纸张(页宽:21cm,页⾼:29.7cm,左右上下边界:2.5cm),记下这些值。
2.检查Report.rdlc的属性视窗中[主体]属性的Size值,它的宽度Width要⼩於[报表属性]中的(页宽) – (左边界) – (右边界)。
3.调整后再整页预览看看,多调⼏次应就不会再產⽣太多的空⽩页了。
ReportViewer报表的使用及参数传递
ReportViewer报表的使用及参数传递新建一个Default页面,添加一个ReportViewer.在ReportViewer的最右上角有一个小三角,点击,设计新报表,这时就会跳到Reprot.rdlc里,点击工具箱,表,新建一个DataSet数据集。
新建连接,配置好数据源。
选择一个数据库,测试连接,成功,下一步,写SQK语句select * from table ,完成。
此时,到Report里,会看到网站数据源中就有刚刚的字段了。
现在可以把要显示的字段拖到表的详细信息中,再到Default中,点击小三角,选择报表Report1,此时,一个简单的报表就作好了。
下面再作一个需要参数的报表。
和刚刚一样,新建Default,报表页,数据集。
或是在刚刚的基础上,在DataSet中,点击右键,配置。
可以重写SQL语句。
数据集的查询语句像这样写。
select * from table where state=@state.这里是根据state查询在Report中,点击报表,报表参数,可以添加一个参数,state,,类型为boolean在工具箱中选择一个文本框。
在文本框上点击右键,表达式,选择参数,双击State,确定。
在Default中添加一个TextBox,Button.在 Default的数据源中,选择带参数的那个方法,到定义参数页面,参数源选择control,controlId选择传入参数的Id,如TextBox1,DefaultValue可以给一个默认值,Default页有一个TextBox1,和一个Button引用using Microsoft.Reporting.WebForms;在button的事件里写。
ReportParameter[] p = new ReportParameter[1];p[0] = new ReportParameter("state", TextBox1.Text); this.ReportViewer1.LocalReport.SetParameters(p); this.ReportViewer1.ShowParameterPrompts = false;这样,一个代参数的报表就作好了。
ReportServices图表无法显示解决方案
2. 屏蔽Reporting Servies的导出功能。
屏蔽导出功能非常简单,只要修改Reporting Services的CSS样式表即可实现。在SQL SERVER的安装目录下搜索HtmlViewer.css,将ToolbarExport节display: inline;改为display: none;
private bool InitExportParameter(string ClassID,string reportname)
{
bool tag = false;
try
{
WebClient client = new WebClient();
其中①为Reporting Services的服务器地址及端口。②为Reporting Services的服务名称。③为Reporting Services的导出控件。④和⑤是要取得的导出参数。⑥是生成的导出文件名。⑦是要导出的文件格式。通过上面的分析可以得知导出的url参数都是可以控制的,只要获取④ExecutionID和⑤ControlID两个参数,我们就可以导出查询的报表到指定格式的文件。
3. 如何手动导出Reporting Services生成的报表。
选择Reporting Services自带的导出功能,通过分析弹出的IE导出页面可以发现,导出的地址格式如下所示
http://①192.168.32.37:8888/②ReportServerHr/③Reserved.ReportViewerWebControl.axd?④ExecutionID=fwgqbo451wej1jjktf23nz55&⑤ControlID=e4ac740e-a26a-4e81-b345-08c791e58b56&Culture=2052&UICulture=4&ReportStack=1&OpType=Export&⑥FileName=%e5%ad%a6%e5%91%98%e7%99%bb%e8%ae%b0%e8%a1%a8(%e6%96%b0)&ContentDisposition=OnlyHtmlInline&⑦Format=XML
C#利用ReportViewer生成报表
C#利⽤ReportViewer⽣成报表本⽂主要是利⽤微软⾃带的控件ReportViewer进⾏报表设计的⼩例⼦,仅供学习分享使⽤,如有不⾜之处,还请指正。
涉及知识点:ReportViewer :位于Microsoft.Reporting.WinForms命名空间,主要⽤于报表的显⽰Report:报表,以rdlc结尾的⽂件,可视化设计报表模板。
报表数据:内置字段,参数,图像,数据集(本报表主要使⽤参数,和数据集)ReportParameter:使⽤名称和值实例化新的报表参数ReportDataSource:报表的数据源与DataTable对象联系起来效果图如下:核⼼代码相关代码如下:1///<summary>2///设置报表3///</summary>4private void SetReport()5 {6//第⼀步:清除之前的数据7this.rptView.LocalReport.DataSources.Clear();8//第⼆步:指定报表路径9this.rptView.LocalReport.ReportPath = "Report2.rdlc";10//第三步:构造新的DataTable11 DataTable dt = new DataTable("DataTable1");12 dt.Columns.Add("Name");13 dt.Columns.Add("Score");14 dt.Columns.Add("Id");15 dt.Rows.Add(new object[] { "语⽂", 80, "Y0001" });16 dt.Rows.Add(new object[] { "数学", 75, "S0001" });17 dt.Rows.Add(new object[] { "英⽂", 96, "E0001" });18//名称不能写错,和报表中的数据集名称⼀致19 ReportDataSource rdsItem = new ReportDataSource("DataSet1", dt);20//此处可以有多个数据源21this.rptView.LocalReport.DataSources.Add(rdsItem);22//第四步:构造参数23 List<ReportParameter> lstParameter = new List<ReportParameter>() {24new ReportParameter("Title",this.txtTitle.Text),25new ReportParameter("Id",this.txtId.Text),26new ReportParameter("Name",this.txtName.Text),27new ReportParameter("Age",this.txtAge.Text),28new ReportParameter("Sex",this.txtSex.Text),29new ReportParameter("Salary",this.txtSalary.Text), 30new ReportParameter("Depart",this.txtDepart.Text) 31 };32this.rptView.LocalReport.SetParameters(lstParameter); 33this.rptView.ZoomMode = ZoomMode.Percent;34this.rptView.ZoomPercent = 100;35//第五步:刷新报表36this.rptView.RefreshReport();37 }View Code源码链接。
Reportviewer 报表
服务器控件使用之Reportviewer 报表收藏1.Reportviewer 报表1.1.Reportviewer控件注:本教程附2个事例:●演练:在本地处理模式下将数据库数据源与ReportViewer Web 服务器控件一起使用●演练:在本地处理模式下将业务对象数据源与ReportViewer Web 服务器控件一起使用如果您已经对ReportViewer控件基础知识比较了解,可以直接参阅事例。
1.1.1.简介Microsoft Visual Studio 2005 包括报表设计功能和ReportViewer 控件,使您可以将功能完整的报表添加到自定义应用程序。
报表可以包含表格格式数据、聚合数据和多维数据。
提供ReportViewer 控件的目的是可以处理和显示应用程序中的报表。
控件有两种版本。
ReportViewer Web 服务器控件用于在 项目中驻留报表。
ReportViewer Windows 窗体控件用于在Windows 应用程序项目中驻留报表。
这两种版本的控件都可以配置为以本地处理模式或远程处理模式运行。
配置为何种处理模式将影响有关报表从设计到部署的所有方面。
●“本地处理模式”是指ReportViewer 控件在客户端应用程序中处理报表。
所有报表都是使用应用程序提供的数据作为本地过程处理的。
若要创建本地处理模式下使用的报表,需要使用Visual Studio 中的报表项目模板。
有关详细信息,请参阅将ReportViewer 配置为进行本地处理。
●“远程处理模式”是指由SQL Server 2005 Reporting Services 报表服务器处理报表。
在远程处理模式下,ReportViewer 控件用作查看器,显示已经在Reporting Services 报表服务器上发布的预定义报表。
从数据检索到报表呈现的所有操作都是在报表服务器上处理的。
若要使用远程处理模式,则必须具有SQL Server 2005 Reporting Services 的许可副本。
reportviewercore使用方法
报告查看器 (ReportViewer) 是一个功能强大的报告工具,它能在.NET应用程序中方便地显示和管理报表。
而 ReportViewerCore 是ReportViewer 在 .NET Core 环境下的一个轻量级版本,它提供了与原版 ReportViewer 相似的功能,同时也方便开发者在 .NET Core 项目中使用报表功能。
接下来,我们将深入探讨 ReportViewerCore 的使用方法,帮助开发者更好地使用这一工具。
1. ReportViewerCore 是什么?ReportViewerCore 是一个在 .NET Core 应用程序中使用报表功能的工具。
它提供了类似于传统ReportViewer 的功能,包括报表的呈现、导出和打印等。
与传统的 ReportViewer 不同的是,ReportViewerCore 更轻量级,适用于 .NET Core 项目,同时也更加灵活,开发者可以更加自由地定制报表的显示和功能。
2. 使用 ReportViewerCore 的基本步骤要在 .NET Core 项目中使用 ReportViewerCore,首先需要在项目中安装相应的 NuGet 包。
安装完毕后,可以通过引用命名空间和初始化ReportViewerCore 来使用报表功能。
在初始化 ReportViewerCore 后,可以通过设置报表的路径、参数和数据源等信息来加载和显示报表。
还可以通过代码来定制报表的样式和功能,以满足项目的需求。
3. ReportViewerCore 的高级功能和定制除了基本的报表显示和管理功能,ReportViewerCore 还提供了一些高级的功能和定制选项。
可以通过设置报表的参数来实现动态筛选和查询功能;可以通过设置报表的主题和样式来定制报表的外观;还可以通过使用报表事件来控制报表的行为,比如在报表加载完成后执行特定的操作等。
这些高级功能和定制选项使得开发者可以更加灵活地使用 ReportViewerCore,并为项目定制符合需求的报表功能。
visual studio2019制作报表例子
visual studio2019製作報表例子
以下是一个使用Visual Studio 2019 中的ReportViewer 控件创建报表的示例:
1. 首先,在Visual Studio 2019 中创建一个新的Windows 窗体应用程序项目。
2. 在项目中添加一个新的报表文件。
右键单击项目,选择"添加" -> "新建项",然后选择"Reporting" 下的"报表" 模板。
3. 设计你的报表。
使用报表设计器,你可以添加数据集、字段、文本框、图表等元素来构建你的报表布局。
4. 设置报表数据源。
在报表设计器中,你可以选择数据源并连接到你的数据库或其他数据源。
5. 在Windows 窗体上添加ReportViewer 控件。
可以从工具箱中找到该控件并将其拖放到窗体上。
6. 设置ReportViewer 控件的属性。
你需要设置报表源(ReportSource)属性为你创建的报表文件。
7. 运行应用程序,你将能够查看和显示你设计的报表。
这只是一个简单的示例,你可以根据自己的需求进一步定制和扩展报表功能。
Visual Studio 2019 提供了丰富的工具和功能来创建各种类型的报表。
报表设计和数据源的设置可能会根据你的具体需求和数据源类型而有所不同。
Winform或WebForm使用ReportViewer报表设计,工具栏按钮英文显示的解决办法
Winform或WebForm使⽤ReportViewer报表设计,⼯具栏按钮英⽂显⽰的解决办法 在项⽬开发中,我们总是会⽤到rdlc报表设计器,⼤多数情况下在本地开发环境中⼯具栏按钮显⽰的是中⽂,但是部署到客户环境后发现显⽰的是英⽂。
解决这个问题也是⾛了很多弯路,给⼤家简单说⼀下: 1、最初以为安装.NET Framework 的语⾔包就可以解决问题,但是后来发现ReportViewer不属于.NET类库,它属于VS中的⼀个插件,所以安装NET Framework 的语⾔包语⾔包根本就不能解决问题。
所以就想有没有ReportViewer的语⾔包,⽹上说有,官⽹中也有下载的,但是安装后并没有解决我的问题。
2、系统环境安装VS2008后在C:\Windows\assembly下边有⼏个资源⽂件,说是拷贝到C:\Windows\assembly\GAC_MSIL下就可以,试了并没有什么⽤。
3、下边就是最简单,最有效的⽅法,在你的项⽬下新建⼀个类,类名称随意,符合C#代码命名规则即可,继成接⼝IReportViewerMessages。
然后写代码:public class ReportViewerMessages: IReportViewerMessages{ #region IReportViewerMessages Memberspublic string BackButtonToolTip{get { return ("返回"); }}public string BackMenuItemText{get { return ("返回"); }}public string ChangeCredentialsText{get { return ("Add your custom text here."); }}public string CurrentPageTextBoxToolTip{get { return ("当前页"); }}public string DocumentMapButtonToolTip{get { return ("⽂档结构"); }}public string DocumentMapMenuItemText{get { return ("⽂档结构"); }}public string ExportButtonToolTip{get { return ("导出"); }}public string ExportMenuItemText{get { return ("导出"); }}public string FalseValueText{get { return ("FalseValueText"); }}public string FindButtonText{get { return ("查找"); }}public string FindButtonToolTip{get { return ("查找"); }}public string FindNextButtonText{get { return ("下⼀个"); }}public string FindNextButtonToolTip{get { return ("下⼀个"); }}public string FirstPageButtonToolTip{get { return ("⾸页"); }}public string LastPageButtonToolTip{get { return ("最后⼀页"); }}public string NextPageButtonToolTip{get { return ("下⼀页"); }}public string NoMoreMatches{get { return ("⽆其他匹配项"); }}public string NullCheckBoxText{get { return ("NullCheckBoxText"); }}public string NullCheckBoxToolTip{get { return ("NullCheckBoxToolTip"); }}public string NullValueText{get { return ("NullValueText"); }}public string PageOf{get { return ("/"); }}public string PageSetupButtonToolTip{get { return ("页⾯设置"); }}public string PageSetupMenuItemText{get { return ("页⾯设置"); }}public string ParameterAreaButtonToolTip{get { return ("ParameterAreaButtonToolTip"); } }public string PasswordPrompt{get { return ("PasswordPrompt"); }}public string PreviousPageButtonToolTip{get { return ("上⼀页"); }}public string PrintButtonToolTip{get { return ("打印"); }}public string PrintLayoutButtonToolTip{get { return ("打印布局"); }}public string PrintLayoutMenuItemText{get { return ("打印布局"); }}public string PrintMenuItemText{get { return ("打印"); }}public string ProgressText{get { return ("正在⽣成报表"); }}public string RefreshButtonToolTip{get { return ("刷新"); }}public string RefreshMenuItemText{get { return ("刷新"); }}public string SearchTextBoxToolTip{get { return ("在报表中查找⽂本"); }}public string SelectAValue{get { return ("SelectAValue"); }}public string SelectAll{get { return ("SelectAll"); }}public string StopButtonToolTip{get { return ("停⽌"); }}public string StopMenuItemText{get { return ("停⽌"); }}public string TextNotFound{get { return ("Add your custom text here."); } }public string TotalPagesToolTip{get { return ("全部页"); }}public string TrueValueText{get { return ("Add your custom text here."); } }public string UserNamePrompt{get { return ("Add your custom text here."); } }public string ViewReportButtonText{get { return ("Add your custom text here."); } }public string ViewReportButtonToolTip{get { return ("Add your custom text here."); } }public string ZoomControlToolTip{get { return ("缩放"); }}public string ZoomMenuItemText{get { return ("缩放"); }}public string ZoomToPageWidth{get { return ("页宽"); }}public string ZoomToWholePage{get { return ("整页"); }}#endregion} 最后,在你放置ReportViewer的那个界⾯的Load事件或者页⾯构造⽅法⾥边增加⼀⾏代码:ReportViewer1.Messages = new ReportViewerMessages();。
真正地全动态报表RDLC和ReportViewer
阅读本文需要有XML解析及 相关经验。
本文编译器使用Visual Studio 2005数据库采用XML格式ReportView 版本为 版本为2.0一、水晶报表的缺陷Crystal Repotrs的功能固然很强大,但是对我们写程序的人来说,是否支持动态生成才是最重要的。
如果报表只能静态生成再嵌入到程序中,实在有些没意思。
不巧的是强大的水晶报表这一点做的很不好,我们可以在程序中动态修改数据源,也可以动态修改文本和字段,但是报表的一大特色,数据图表,却只能静态生成。
也就是说,假如我设计报表时添加了一个图表,用户希望能在多个字段中选择自己想显示的,动态显示到图表中,水晶报表就做不到。
对它来说,我们至多只能在程序中得到一张位图,这样就没有意义了。
这个时候我发现了ReportViewer,它用来显示RDLC语言表述的报表。
RDLC最初被用在SQL Server for XML上。
它实际上是一个XML文本,这就意味着我们在程序中很容易更改它的构架。
ReportViewer是RDLC的浏览器,本身没什么好说的,需要注意的是它的数据源必须是DataTable对象。
二、结构模型猛的一看有点复杂呵呵,其实还是挺简单的。
数据源可以是传统数据库,也可以是XML表格Data Adapter 及Connection 等用来连接传统的数据库DataSet用来存储数据,同时可以直接操作XML文件BindingSource利用DateSet来填充BindingSource,这一步数据中转逻辑上有点多余,但是必不可少ReportDataSource利用BindingSource来填充ReportDataSource,......-_-!!ReportViewer利用ReportDataSource填充的数据及指定给它的RDLC报表文件来显示报表三、示例代码请大家注意:1.这里我呈现给大家的只是如何实现报表,报表本身的制作及RDLC描述语言不在讨论范围。
C#报表控件ReportViewer的使用
C#报表控件R e p o r t V i e w e r的使用(转)2011-11-0120:05启动VS2005新建一个窗体项目,命名为TestProj在左边的窗体内选择“添加新数据源”或在菜单上操作“添加新数据源”:选择后出现对话窗体,选择“数据库”,进入“下一步”:本数据源以SqlServer2000所提供的Northwind数据库为例,因此在数据库内选择驱动程序为SqlServer,具体操作视所用数据库而定(如果连接为Oracle,建议用Oracle所提供的ODP for .NET,地址:)。
选择数据源后,指定数据库文件,并进行测试,如果连接不通,请检查你的软件设置。
进行下一步,至显示出库文件内的表及视图,然后打开表,并选择其中的Employees,选择完成。
在数据源窗口中显示出所选择表及表内的字段,以备使用。
同时在资源管理器中,也可以看到新增加的数据文件。
在新建的窗体内,放入报表浏览控件:此报表浏览控件集成了报表查看及打印预览的功能,可直接输出至打印机,也可直接输出至Excel文件或PDF文件,对于喜欢看Excel表格的客户来说,这个报表控件非常不错。
关于此报表的来源及台前幕后的各种说法,请自己查询相关的网站。
3 建立报表文件选中报表浏览器控件后,在控件的右上角会出现一个小三角,点击后,出现一个菜单,选择“设计新报表”或在解决方案资源管理器中添加一个新的报表文件:双击“报表项”内的“表”,则设计空白表内生成一个表格,我们可以在表格内添加数据项。
此报表的设计方式类似于MS以前的VB下报表设计环境。
在报表设计器中,我将一份报表分为五个部分,从上至下为:报表标题区、列标题区、数据显示区、合计及页脚。
如果将报表的设计形式显示出页眉及页脚,报表的形式会看得更清楚些:选择页眉及页脚:显示结果:现在开始设计报表:在“页眉”区内放入一个文本框,将内容更改为“测试报表”,居中,字体放大加粗:从数据源窗口中选择合适的列,用鼠标拖到报表内的“详细信息”表格上,数据会自动填入:将设计的报表保存后,返回报表浏览窗口,并为报表浏览器选择我们设计的报表:选中报表文件后,菜单也有所改变:再为此报表文件指定数据源,选择数据源:确定,保存文件并运行测试文件。
C#报表使用方法(report viewer)
VS2008(2005) C# 报表(report viewer)使用方法YuChonggao 2011.11.05 QQ:746049506mail:************* 1 在VS解决方案资源管理器中,添加数据集2. 在数据集dstest22 中添加数据表dt22添加列3. 添加报表4. 添加报表内容页眉5.报表参数Parameters!RP_Code 为自定义参数“RP_Code”Globals!ExecutionTime 为全局数据当前系统时间6. 报表中添加表选择左边数据源,将数据集dstest22的表dt22的字段,拉到右边数据表对应的姓名,分数,班级设置数据表格的表头在每页重复设置数据表格属性中的边框solid设置页码7.在窗体(form2)中添加报表显示reportviewer将左边工具箱中的Microsoft report viewer 拖到右边的窗体中,并选择报表report22.rdlc8 在窗体代码中,对报表中参数,和数据集赋值。
// RP_Code 报表参数赋值ReportParameter rpCode;rpCode = new ReportParameter("RP_Code", "TJYCGNO0001");rv22.LocalReport.SetParameters(new ReportParameter[] { rpCode });//报表数据集赋值string str_Connection_String = AppConfig.Read("Connection_String");string sql = "select Name,Score,Class from test11";DataSet ds = SqlHelper.ExecuteDataset(str_Connection_String, CommandType.Text, sql); rv22.LocalReport.DataSources.Clear();rv22.LocalReport.DataSources.Add(new ReportDataSource("dstest22_dt22", ds.Tables[0])); rv22.RefreshReport();9 显示报表10 在报表中绘制曲线,左边工具箱的的图表拉放到报表report22.rdlc中对图表属性进行设置图表类型设置为折线选择图标对应的数据集,编辑图表值添加类别组设置X轴设置Y轴显示报表(数据表,图,页码)。
ReportViewer学习(三)
ReportViewer学习(三)演练:在本地处理模式下将数据库数据源与 ReportViewer Windows 窗体控件⼀起使⽤这个部分的知识上⼀篇⽂章⼤部分已经写了主要是矩阵的⽤法,没有别的,所以这个创建⼀个新的 Windows 应⽤程序项⽬定义数据源连接和 DataTable设计报表————————1.1. 在“项⽬”菜单上选择“添加新项”。
2. 在“添加新项”对话框中,单击“报表”。
3. 为报表⽂件输⼊⼀个名称。
默认情况下,报表名称为“Report1.rdlc”。
单击“添加”。
随即会打开报表设计器,其中将显⽰表⽰报表页的虚线图⾯。
4. 打开“⼯具箱”。
单击⽂本框,然后单击窗体。
5. 在⽂本框中输⼊报表标题:“每个部门每次换班的雇员数”。
6. 从“⼯具箱”中将“矩阵”报表项拖动到⽂本框下的报表上。
7. 在“数据源”窗⼝中,展开“DataTable1”,以查看“Dept”、“Shift”和“EmployeeID”列。
将“Dept”字段拖动到矩阵第⼀列第⼆⾏的“⾏”⽂本框上。
8. 将“Shift”字段拖动到矩阵第⼆列第⼀⾏的“列”⽂本框上。
让该⽂本框处于选中状态,并将“TextAlign”属性设置为“右”。
单击“报表格式”⼯具栏上的“B”图标,以使⽤粗体。
9. 单击矩阵中的任意位置,以选择矩阵数据区域。
然后单击右键,并按名称选择矩阵(默认值为 matrix1)。
矩阵报表项周围将显⽰⼀个轮廓。
右击该轮廓,然后选择“属性”。
检查所打开的对话框的标题是否为“矩阵属性”。
10. 单击“组”选项卡。
在“列”部分中,单击“编辑”。
11. 在“排序与分组”对话框中,单击“排序”选项卡。
12. 单击“表达式”下的第⼀个框以激活该⽂本框,然后单击向下箭头并选择“=Fields!Dept.Value”。
这样可以确保按照部门名称对报表数据进⾏排序。
13. 从“数据源”窗⼝中,将“EmployeeID”字段拖动到矩阵第⼆列第⼆⾏的“数据”⽂本框上。
ReportViewer使用详细案例
ReportViewer(报表)使用案例
简单的使用步骤:
1.打开VS2010-->新建项目
2.资源管理器-->右键添加-->新建项
3.选择数据集添加
4.右键击工具箱添加(注意这里可以添加多种类型的数据集,但我们现在操作的是TableAdapter,您也可选其他选项)
完成后会出现如下界面:
5.点击新建连接,自行配置个人数据库连接,配置完成后直接下一步,如下图这里可以选择你要采用的数据库访问方式,然后直接下一步。
如:我选的是sql语句类型的数据库访问方式,sql输入完毕后直接完成
在数据集系统会自动生成如下图:
您可保存关闭!
6.再次来到解决方案--右键--添加--新建项
7.新建数据集
出现如下图,选择刚才所见的数据集确定
8.在该区域鼠标右键插入表(或其他图形),双击编辑表头选择数据调整页面位置完成保存关闭!
9.来到页面编辑选择报表里控件reportVeiwer 拖到窗口上,调整控件位置
10.点击小三角选择报表
选择后保存关闭窗口大功告成!运行程序查看。
如下:。
[C#]ReportView显示本地报表==
使用ReportView控件可以显示远端Report service的报表,也可以处理生成本地报表,用法也比较简单,下面列举一下简单的步骤。
首先使用Report Wizard添加一个rdlc报表文件到工程项目,使用这个wizard会自动创建报表使用的DataSet等,其实这些后面都可以用自己的DataSource来替换掉。
设计好一个Table的报表,在报表中添加FromDate和ToDate两个参数,然后添加两个TextBox在报表上显示这两个参数的值。
然后添加一个ReportView控件到Form,在一个按钮事件中来初始化和刷新报表:private void button1_Click(object sender, EventArgs e){reportViewer1.LocalReport.ReportEmbeddedResource ="ReportsApplication1.Report1.rdlc";ReportDataSource reportDataSource= new ReportDataSource(); = "MESDBDataSet_ProdFinish";reportDataSource.Value = getProdFinishTable();reportViewer1.LocalReport.DataSources.Clear();reportViewer1.LocalReport.DataSources.Add(reportDataSource);ReportParameter fromParam= newReportParameter("FromDate",dateTimePicker1.Value.ToShortDateString());ReportParameter toParam = new ReportParameter("ToDate",dateTimePicker1.Value.ToShortDateString());reportViewer1.LocalReport.SetParameters(newReportParameter[]{fromParam,toParam});reportViewer1.RefreshReport();}private DataTable getProdFinishTable(){SqlConnection connection= newSqlConnection(Properties.Settings.Default.MESDBConnectionString);connection.Open();string sql = "select * from prodfinish where proddate>=@fromdate andproddate<dateadd(day,1,@todate)";SqlDataAdapter adapter= new SqlDataAdapter(sql,connection);adapter.SelectCommand.Parameters.AddWithValue("fromdate",dateTimePicker1.Value.Date);adapter.SelectCommand.Parameters.AddWithValue("todate",dateTimePicker2.Value.Date);DataTable dataTable = new DataTable();adapter.Fill(dataTable);connection.Close();return dataTable;}运行后发现ReportView 的工具栏是英文的,这个是因为缺少语言包,从下载2008 SP1的中文语言包安装后就可以了,其他版本的语言包用“Reportview 语言包” google吧。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
服务器控件使用之Reportviewer 报表1.Reportviewer 报表1.1.Reportviewer控件注:本教程附2个事例:●演练:在本地处理模式下将数据库数据源与ReportViewer Web 服务器控件一起使用●演练:在本地处理模式下将业务对象数据源与ReportViewer Web 服务器控件一起使用如果您已经对ReportViewer控件基础知识比较了解,可以直接参阅事例。
1.1.1.简介Microsoft Visual Studio 2005 包括报表设计功能和ReportViewer 控件,使您可以将功能完整的报表添加到自定义应用程序。
报表可以包含表格格式数据、聚合数据和多维数据。
提供ReportViewer 控件的目的是可以处理和显示应用程序中的报表。
控件有两种版本。
ReportViewer Web 服务器控件用于在 项目中驻留报表。
ReportViewerWindows 窗体控件用于在Windows 应用程序项目中驻留报表。
这两种版本的控件都可以配置为以本地处理模式或远程处理模式运行。
配置为何种处理模式将影响有关报表从设计到部署的所有方面。
●“本地处理模式”是指ReportViewer 控件在客户端应用程序中处理报表。
所有报表都是使用应用程序提供的数据作为本地过程处理的。
若要创建本地处理模式下使用的报表,需要使用Visual Studio 中的报表项目模板。
有关详细信息,请参阅将ReportViewer配置为进行本地处理。
●“远程处理模式”是指由SQL Server 2005 Reporting Services 报表服务器处理报表。
在远程处理模式下,ReportViewer 控件用作查看器,显示已经在Reporting Services 报表服务器上发布的预定义报表。
从数据检索到报表呈现的所有操作都是在报表服务器上处理的。
若要使用远程处理模式,则必须具有SQL Server 2005 Reporting Services 的许可副本。
有关详细信息,请参阅将ReportViewer 配置为进行远程处理。
若要在应用程序中使用ReportViewer 控件,则必须了解如何将控件添加到项目表单或网页中,如何配置控件来使用本地报表定义或服务器报表,如何更新数据源引用,以及如何在应用程序中测试和部署报表和控件。
提供的演练有助于您学习这些关键技能。
有关详细信息,请参阅示例和演练。
1.1.2.将Reportviewer配置为进行本地处理您可以将ReportViewer 控件配置为在本地处理报表,以使这些报表可以使用该控件提供的内置处理功能。
如果配置ReportViewer 控件进行本地处理,则所有的报表处理都在承载应用程序的计算机上进行。
报表使用的所有数据必须从客户端应用程序提供的数据中检索。
报表设计期间,必须事先定义报表中使用的数据源。
运行时,应用程序必须生成数据表或检索报表中使用的数据。
本地处理的报表可以获取数据表和业务对象中的数据。
根据您使用的是Web 服务器控件还是Windows 窗体控件,为本地处理的报表配置数据源的步骤有所不同。
有关支持的数据源的详细信息,请参阅为ReportViewer 报表创建数据源。
如何配置ReportViewer 进行本地处理若要配置ReportViewer 进行本地处理,应选择或创建要用于ReportViewer 控件的客户端报表定义(.rdlc) 文件:1.将工具箱的“数据”部分中的ReportViewer 控件添加到项目中的窗体或网页。
2.在“ReportViewer 任务”智能标记面板中,单击“设计新报表”来创建您要使用的.rdlc文件。
另外,您也可以选择“选择报表”来使用已是您项目的一部分的现有.rdlc 文件。
您只能选择一个报表。
如果报表包含子报表或钻取链接,则文件列表中将会显示其他报表。
3.单击“设计新报表”会将空的.rdlc 文件添加到您的项目中,以图形设计模式打开空报表,并提供菜单和设计图面,以便您可以创建新报表。
若要创建新报表,您必须已经定义要使用的数据集。
有关创建.rdlc 文件的详细信息,请参阅创建客户端报表定义(.rdlc) 文件。
4.生成或部署应用程序以验证报表是否正确地显示在应用程序中。
您可以使用演练来了解如何配置和使用本地处理模式的ReportViewer 控件。
所有演练都包括本地处理报表的控件配置。
有关详细信息,请参阅示例和演练。
何时使用本地处理建议对于包括中小型号报表和数据集的应用程序使用本地处理模式。
由于所有数据和报表的处理都是在客户端进行的,因此,如果您试图处理大型或复杂的报表和查询,性能可能会降低。
如果您需要简单的部署策略,其中应用程序的所有部分都在同一台计算机上一起运行,也建议使用本地处理模式。
本地处理模式的功能不及远程处理强大,它适用于不需要报表服务器的独立应用程序。
熟悉在远程SQL Server Reporting Services 报表服务器上运行的服务器报表的用户应注意以下特别之处:1.客户端报表定义(.rdlc) 中的报表参数不映射到查询参数。
客户端报表定义中没有参数输入区域,它接受随后在查询中使用的值。
2.客户端报表定义不包含嵌入式查询信息。
您必须定义返回可供报表使用的数据的数据源。
3.通过RSClientPrint ActiveX 控件执行的基于浏览器的打印不适用于ReportViewerWeb 服务器控件中运行的客户端报表定义。
打印控件是报表服务器功能集的一部分。
如果您受到这些特别之处的影响,您应该迁移到Reporting Services 安装或编写提供您所需功能的应用程序代码。
1.1.3.添加和配置Reportviewer控件1.向项目中添加Windows 窗体或网页。
2.在图形设计模式中,将工具箱中的ReportViewer 控件拖至窗体或网页。
ReportViewer 控件位于工具箱的“数据”组中。
控件包括“ReportViewer 任务”智能标记面板,这样您可以立即选择报表。
3.在“ReportViewer 任务”智能标记面板中,选择任务以添加报表并配置控件。
指定报表确定将控件配置为本地处理还是远程处理。
●单击“设计新报表”启动报表设计器,并在您的应用程序中创建报表定义(.rdlc) 文件。
可以在您的应用程序中创建在客户端本地处理的新报表。
若要了解有关创建报表的详细信息,请参阅创建客户端报表定义(.rdlc) 文件。
●使用“选择报表”来选择现有报表定义。
您可以选择在项目中定义的本地报表定义(.rdlc)文件,也可以选择“服务器报表”来选择在SQL Server 2005 Reporting Services 报表服务器上发布的报表。
●选择服务器报表将控件配置为远程处理。
若要选择服务器报表,必须知道报表服务器URL 和报表的路径。
报表路径必须以正斜杠( / ) 开头。
若要运行报表,必须对报表服务器具有权限才能访问报表。
如果不知道URL 或报表路径,请咨询报表服务器管理员。
有关服务器报表的详细信息,请参阅将ReportViewer 配置为进行远程处理。
●选择现有的报表定义(.rdlc) 文件将控件配置为本地处理。
选择报表时,必须选择.rdlc文件;即使您的项目中包含.rdl 文件,也不能指定.rdl 文件。
如果要使用.rdl 文件,必须对其进行转换。
有关详细信息,请参阅创建客户端报表定义(.rdlc) 文件和转换RDL 文件和RDLC 文件。
●单击“在父容器中停靠”展开ReportViewer 控件的视图图面,以便它使用窗体或页面中所有可用空间。
此选项可用于Windows 窗体控件。
●单击“重新绑定数据源”更新报表中使用的数据表和业务对象的数据源绑定。
此选项在为控件选择报表之后可用。
如果修改报表数据源,或在图形报表设计环境之外修改数据绑定报表项(例如,直接编辑XML),则需要重新绑定数据源。
4.选择ReportViewer 控件并打开“属性”窗口。
5.对ReportViewer 控件设置属性以确定视图区域的可见性和可用性。
可使用参考文档了解每种属性。
有关详细信息,请参阅ReportViewer 属性。
若要了解ReportViewer 工具栏,请参阅配置并使用ReportViewer 工具栏。
6.生成或部署应用程序以在窗体或页面中预览报表。
1.1.4.创建客户端报表定义(.rdlc)文件ReportViewer 控件支持本地处理模式,该模式允许用户使用控件的内置处理功能运行客户端报表定义(.rdlc) 文件。
可以容易地在应用程序项目中创建以本地处理模式运行的报表。
创建这种报表的方法有两种:●可以向应用程序项目中添加报表项。
从“项目”菜单中选择“添加新项”时,可以选择“报表”模板,从空白报表中生成报表布局。
●可以在配置ReportViewer 控件时,单击“设计新报表”。
即打开一个空白报表。
如何创建和预览本地报表:1.在Microsoft Visual Studio 2005 中,打开应用程序项目或网站。
2.创建要使用的数据源。
可以使用项目中可用的数据集中定义的数据表或业务对象。
有关详细信息,请参阅为ReportViewer 报表创建数据源。
3.创建要在项目中使用的报表定义(.rdlc) 文件。
4.通过将工具箱中的表、文本框、矩阵、列表或图表添加到空白报表来定义报表布局。
这些项称为“数据区域”。
数据区域绑定到数据源。
具体来说,就是将数据区域中的每个单元映射到数据源中的字段。
有关详细信息,请参阅向ReportViewer 报表添加数据区域。
5.通过添加样式、格式设置、图像、边框、页眉、页脚、排序及其他报表功能来完成报表。
有关详细信息,请参阅定义报表布局。
6.选择将包含控件的窗体或页面。
7.在图形设计模式中,将ReportViewer 控件添加到网页或窗体。
ReportViewer 控件位于工具箱的“数据”部分中。
有关详细信息,请参阅添加和配置ReportViewer 控件。
8.在页面或窗体中调整控件的大小和位置。
9.在“ReportViewer 任务”智能标记面板中,选择创建的客户端报表定义(.rdlc) 文件来将报表绑定到控件。
有关打开智能标记面板的详细信息,请参阅使用“ReportViewer 任务”智能标记面板。
若要预览报表,可以生成或部署应用程序。
只能通过在ReportViewer 控件中运行报表对其进行预览。
没有只是针对.rdlc 文件的单独预览模式。
请注意,您可以随时打开和编辑报表定义,然后生成或部署应用程序来检查结果。
向项目添加新的报表项:向项目添加新的报表项时,会创建空白报表,并向项目添加Report.rdlc 文件。