Reportviewer_报表
reportviewer
reportviewer
ReportViewer文档
1. 介绍ReportViewer
ReportViewer是一个用于创建、显示和管理报表的控件。它是由Microsoft开发的工具,可用于在Web或Windows应用程序中生成和呈现报表。ReportViewer提供了一个功能强大的界面,使用户能够轻松地创建和管理报表。
2. ReportViewer的功能
ReportViewer提供了多种功能,使用户能够创建、显示和管理报表。以下是ReportViewer的一些主要功能:
a. 报表设计工具:ReportViewer提供了一个报表设计工具,用户可以使用该工具创建自定义报表。用户可以选择从多种预定义报表模板开始,然后根据自己的需求进行修改和定制。报表设计工具提供了多种元素和控件,如文本框、图表、表格等,使用户能够创建丰富多样的报表。
b. 数据源连接:ReportViewer支持多种数据源,包括数据库、Web服务、XML文件等。用户可以轻松地连接到不同的数据源,并将数据源中的数据用于报表的生成和呈现。
c. 报表预览:ReportViewer提供了一个实时预览功能,用户可以在报表设计过程中随时预览报表的效果。这使得用户能够快速调整报表的布局和样式,以获得最佳的呈现效果。
d. 报表导出:ReportViewer支持多种报表导出格式,包括PDF、Excel、Word等。用户可以将报表导出为这些格式,以便在不同的应用程序或平台上使用和共享报表。
e. 数据筛选和排序:ReportViewer允许用户对报表中的数据进行筛选和排序。用户可以根据自己的需求定义筛选条件,并对报表中的数据进行排序。这使得报表更加灵活和易于分析。
ReportViewer,RDLC报表开发之分页
ReportViewer,RDLC报表开发之分页
前段时间开发报表,采⽤了 ReportViewer + RDLC , 开发整理如下.
MS 的DataGrid ,GridView,和 ReportViewer 分页机制差不多,都需要绑定全部数据,MS控件⾃动处理分页。只是ReportViewer 是按页⾯布局分页的,⽽不是按数据条数。绑定全部数据的⽅式会⽆谓的增加服务器压⼒,尤其是数据计算和表关联多的情况下。为了减轻服务器压⼒,我们采⽤数据分页,数据传到应⽤服务器端后,再加⼯⼀下(插⼊空数据),做也可分页数据源。
如果数据库有 100 条数据,每页10条数据,那存储过程返回10条数据后,还需要再插⼊90条数据。当数据⼤的时候,插⼊的数据也很多。有没有插⼊数据再少⼀点的办法呢?
当然是有了,没有就不写了。。先提两个概念:维度和指标.
维度: 是指公司,项⽬,区域等要分析的对象.
指标: 是指针对维度进⾏计算的结果
1. 先对维度进⾏分页.
2.针对分页结果,有针对性的进⾏指标计算,可以把每个计算列,做成函数,⽅便调⽤,同时,也⽅便维护和测试。
⽅案是把页码做成分组,这样再插⼊的时候,就只插⼊ Celling( 90 ÷ 10 ) 条的空分组数据即可。插⼊的数据少了 n 倍。
存存过程⽰例代码:
CREATE proc[dbo].[R_ANALYSIS]
(
@Query varchar(50)='', --查询条件
@PageIndex int=1 , --从1开始
@PageSize int=50 , --每页条数,传⼊ <=0 表⽰不分页。
利用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的新实例。
reportviewer教程
打开Visual Studio后,选择"文件"—>"新建项目",打开新建项目对话框:
打开新建项目对话框后,在“项目类型”中选“Visual Basic"中的Windows:
(也可在“项目类型”中选其它语言中的“Visual C#")
再在模板中选"Windows 应用程序",并在名称中输入名称"ReportViewerTest":
按确定后,显示Form的设计画面:
将工具箱中ReportViewer拖入至Form1中,将Form1适当的调大一点:
这样就在Form1上创建了一个默认名为"ReportViewer1"的控件,这个控件
就是用来浏览报表的控件。
(如果是用C#语言就创建了默认名为"reportViewer1"的控件,是第一个字母的大小写有区别)点击"ReportViewer1",在它的右上角出现了一个小三角形:
点击右上角的小三角形,点选"在父容器中停靠":
出现以下画面:
打开解决方案资源管理器(按Ctrl+Alt+L或在菜单->视图->解决方案资源管理器):
右击这个项目名称"ReportViewerTest",在出来的菜单上选:
添加->新建项,如下图所示:
在添加新项对话框中选"报表",名称就用默认的Report1.rdlc:
再点添加后,出现Report1.rdlc的设计画面:
选择工具箱中报表项下的"表",将"表"拖到Report1.rdlc设计窗体中:
将"表"拖到Report1.rdlc设计窗体中后,会自动生成“table1" 表,如下图:
红框以内就是"table1" 表。
在红框以内是报表的空白区:
reportviewer
rdlc 报表的使用
第一阶段【添加数据集】
首先在微软官网下载了报表并安装之。打开VS2010,在项目中添加“新建项”,在“已安装的模版中”选择“Reporting”—》“报表”,在最下方键入名称。
打开“工具箱”,可以按照自己的需求,或拽和编辑各种控件。也可以在“报表数据”为报表添加“内置字段”和“参数”。打开“报表数据”的操作:“视图”—》最后一项“报表数据”,或者按“Ctrl + Alt + D ”。既然是报表,当然离不开数据了。我这里选择用数据库作为数据源。在报表数据工具栏中,点击“新建”—》“数据集”
会弹出一个新建数据集的界面:
这里选择“数据库”,下一步,“数据集”,点击“新建连接”,选择好服务器名、密码和数据库。测试一下:成功后,确定。
选择你所需要的表、视图、函数或存储过程。
确定后,返回到这个界面,你可以更改数据集的名称、选择具体的表、视图等。然后确定。
这样在“报表数据”栏中就可以看到新建的数据集了。
第二阶段【设计报表】
介绍一些设计报表的工具箱,在VS2010 IDE左侧“工具箱”中的报表项,文本框用于可以显示文字、传递参数。表和矩阵则可以用来存放数据。不同的是表是针对于“列数固定、行数可变的数据”设计的,而矩形则是针对于“列数与行数均可变”的聚合数据设计的。一般数据库中的表字段都为引文,但是显示的时候,都用中文,为了保证数据隐秘,也行该用中文。说说表中的实现,对于行标题,直接修改即可,而数据行可以修改,也可以不修改。数据行由字段占位符构成,可以右击编辑占位符的属性来实现显示中文。在查询报表时,占位符会被真实数据所代替。,也可以编辑表达式,用!符号来做找到字段属性。矩阵跟列
ReportView报表开发记录(一)
ReportView报表开发记录(⼀)
在公司开发,使⽤到ReportView技术,写下⾃⼰的经验。
1.在⼯具箱中找到 ReportViewer,ScriptManager放到test.aspx页⾯。
2.添加数据集 DataSet.xsd
在数据集中添加DataTable,添加查询的列,列名要和数据库中的列(字段)对应。
3.添加报表Report.rdlc
4.绑定数据
在这⾥绑定数据使⽤的是动态绑定。
1private void getDateBind()
2 {
3//获得路径
4string req_url = this.Request.Url.ToString();
5string currentPath = "";
6int pos = req_stIndexOf("/");
7if (pos > 0)
8 {
9 currentPath = req_url.Substring(0, pos + 1);//给报表⽂本框添加url
10 }
11 DataSet ds = BuildingDetails.GetIndustryHYData(time1, time2, buildingId, industryId);//从数据库中查询的数据
12 totalCount.InnerText = ds.Tables[0].Rows.Count.ToString();
13 rvBuildingDetail_IndustryHY.LocalReport.DataSources.Clear();
14 rvBuildingDetail_IndustryHY.LocalReport.DataSources.Add(new ReportDataSource("BuildingDetail_IndustryHY", ds.Tables[0]));
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>
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
[C#]ReportView显示本地报表
[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);
Winfrom的ReportViewer报表控件和.rdlc后缀的报表绑定应用
Winfrom的ReportViewer报表控件和.rdlc后缀的报表绑定应⽤1.创建⼀个winfrom项⽬,从⼯具箱添加ReportViewer控件,命名ReportViewer1
2.在项⽬中添加⼀个报表,命名Report1.rdlc
3.打开刚刚添加的报表,画出模板
4.添加⼀个数据集,⽤于报表绑定,命名DataSet1
5.在数据集中添加⼀个DataTable,命名DataTable1,有3列C1,C2,C3
6.在报表Report1.rdlc中添加数据集,命名DTTEST
7.在报表中绑定数据
数据类型有⽂本,图⽚等等,本例就讲解这两种如何绑定。
1).⽂本:3种⽅式绑定。
A.在⽂本属性-值-输⼊栏中直接输⼊[C2]
B.在⽂本属性-值-fx,输⼊=Fields!C2.Value
c..在⽂本属性-值-fx-数据集-DTTEST-First(C2)
2).图⽚
a.静态图⽚:图⽚属性,图像源选择嵌⼊,然后点击导⼊。
2).动态图⽚:例如⼆维码、条形码,原理:把图⽚转成byte[],byte[]再转成base64数字编码的等效字符串。
A.图⽚属性,图像源选择数据库,选择对应MIME类型image/jpeg,字段点击fx,输⼊=System.Convert.FromBase64String(Fields!C1.Value)
8.详细代码如下:
using System;
using System.Collections.Generic;
using ponentModel;
using System.Data;
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//第三步:构造新的DataTable
11 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" });
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 提供了丰富的工具和功能来创建各种类型的报表。
报表设计和数据源的设置可能会根据你的具体需求和数据源类型而有所不同。
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 的高级功能和定制
ReportViewer控件最简单教程-Xieris
效果如下:
实பைடு நூலகம்步骤: 基础:
1 个 button,1 个 report viewer(rv1)控件,直接从工具栏拖至页面即可。 右击项目,添加报表文件(Report.rdlc),双击报表文件,工具栏的控件会变成报表工具。
Button 事件(点击时显示报表):btn_Click.
代码如下: public void btn_Click(object sender, EventArgs e) {
此时,点击表格数据行(第二行,单元格右上角弹出的图案),点击图案,弹出了刚才的三 个字段,依次选上。
ReportDataSource rds = new ReportDataSource("DataSet1", loadData2()); 解释:将 list<personal>数据添加到刚建立的数据集,数据集再填充到表格。 可以运行了。 预览效果如下:
日期
修改人
修改处
原因
/*先清空原来数据集*/ rv1.LocalReport.DataSources.Clear(); /*设置报表文件*/ rv1.LocalReport.ReportPath = "Report.rdlc"; /*数据集的填充,效果 2-3 才需要*/ ReportDataSource rds = new ReportDataSource("DataSet1", loadData3()); /*将数据集添加到本地报表,效果 2-3 才需要*/ rv1.LocalReport.DataSources.Add(rds); /*刷新报表显示*/ rv1.LocalReport.Refresh(); } 加蓝色的代码,实现效果时需要改的,记住。 实现效果 1: 打开 Report.rdlc 文件,从工具栏拖两个文本框,一个内容为 hello,一个内容为 world。
VB.NET中ReportViewer设计报表
中ReportViewer设计报表
这次做收费系统⽤的,⾥⾯涉及到报表的使⽤,.NET中VS⾃带了⼀个控件ReportViewer,⾸次,打开这个控件看着界⾯有点简单,如同窗体⼀样,不过,仔细看过后会觉的功能还是可以的,⽽且操作简便。
1 我们可以从“⼯具箱”⾥找到该控件并添加到窗体上,如下图:
2 添加报表
我们可以在UI层上右键,选“添加”-->"新建项"-->“报表”。当然还可以在ReportViewer控件右上⾓选择⼩三⾓,⾥⾯有“设计新报表”⼀项,通过报表向导⾃⼰建⽴。
然后,选择“报表”
2 为报表设置数据源
即⼀个DataSet对象,来存储数据库中数据
单击“完成”就完成了数据源配置。
4 代码中创建数据源实例,设置报表的新数据源。
这个数据源的数据可以是通过条件查询得到,⽤于最后显⽰在报表中。
现在,⼀个基本报表就设计完了,它不仅这些应⽤,更多的功能还有待使⽤。
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 Members
public string BackButtonToolTip
{
get { return ("返回"); }
}
public string BackMenuItemText
- 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 服务器控件用于在 项目中驻留报表。ReportViewer
Windows 窗体控件用于在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 控件执行的基于浏览器的打印不适用于ReportViewer
Web 服务器控件中运行的客户端报表定义。打印控件是报表服务器功能集的一部分。
如果您受到这些特别之处的影响,您应该迁移到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 配置为进行远程处理。