当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > asp.net Reporting Service在Web Application中的应用

ASP.NET
Asp.net 时间操作基类(支持短日期,长日期,时间差)
asp.net 获取机器硬件信息(cpu频率、磁盘可用空间、内存容量等)
asp.net 数据库备份还原(sqlserver+access)
Asp.Net 数据操作类(附通用数据基类)
Asp.net 弹出对话框基类(输出alet警告框)
Asp.net 文件上传类(取得文件后缀名,保存文件,加入文字水印)
Asp.net Socket客户端(远程发送和接收数据)
Asp.net 字符串操作基类(安全,替换,分解等)
Asp.Net数据输出到EXCEL表格中
asp.net Gridview里添加汇总行
asp.net UpdatePanel的简单用法
asp.net ajaxControlToolkit FilteredTextBoxExtender的简单用法
this connector is disabled错误的解决方法
sql事务应用积累
asp.net Page.Controls对象(找到所有服务器控件)
在asp.NET中字符串替换的五种方法
ASP.NET缓存方法分析和实践示例代码
asp.net 在DNN模块开发中遇到的resx怪问题
ASP.NET State service状态服务的问题解决方法
asp.net 结合mysql存储过程进行分页代码

ASP.NET 中的 asp.net Reporting Service在Web Application中的应用


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 56 ::
收藏到网摘: n/a

由于我们这个项目中使用微软的报表服务(Reporting Services)作为报表输出工具,本人也对它进行一点点研究,虽没有入木三分,但这点知识至少可以在大部分Reporting Service的场景中应用。 原先刚装上Reporting Service时还觉得有点神秘,毕竟在做这个项目前还没有真正接触这个微软用于代替水晶报表的报表工具,而且微软似乎还不满足于一个报表工具那么简单。
Reporting Services 是一种基于服务器的新型报表平台,部署在Microsoft® SQL Server™ 2000基础上,可用于创建和管理包含来自关系数据源和多维数据源的数据的表格报表、矩阵报表、图形报表和自由格式报表。可以通过基于 Web 的连接来查看和管理您创建的报表。
Reporting Services 提供了一套完整的服务、工具和应用程序编程接口 (API),您即使不是程序员也可以使用 Reporting Services。可以使用 Reporting Services 中包含的应用程序和工具来制作、发布和管理报表。此外,还提供了支持报表生存周期的各个阶段的工具或应用程序。程序员可以使用 API 将报表功能扩展或集成到自定义解决方案中。
本文主要简介Reporting Service开发中所涉及到的部分技术,首先我们可以从其是一个服务(Service)可知,它提供了Web Service接口,并且允许我们在报表中嵌入代码(必须是VB .Net),还可以引用基于.Net Framework的程序集。
在此主要讲Reporting Service开发相关技术的二个方面
1.在自定义的应用程序中集成Reporting Service提供的报表服务
生成报表展示组件
要想把Reporting Service的报表(RDL文件)集成到自定义的应用程序中,我们可以通过Reporting Service自带的一个报表展示组件,它可以通过对sample项目ReportViewer编译得到,默认为ReportViewer.dll。
我们通过通过对sample项目ReportViewer进行编译,可以得用于在自定义应用程序集成RDL文件的组件,但如果我们需要在自定义应用程中传递参数给报表,用默认编译得到的ReportViewer.dll组件将不支持。接下来,我们要解决这个问题,如何将在自定义应用程中给报表参数赋值?
复制代码 代码如下:

private void SetParameter(string name, string value)
{


}

此方法的作用将是给报表参数设置值,这时大家可能会很高兴,因为它提供了一个方法来支持,但当我们看到private时,我们也许高兴不起来了,微软基本安全考虑,默认状态下并不把传递参数的方法暴露出来。但往往实现应用与安全都是互斥的。
现在我们至少知道如何扩展该功能来达到我们的目的。
复制代码 代码如下:

public void SetQueryParameter(string Name, string value)
{
this.SetParameter(Name, value);
}
我们新增一个public的方法SetQueryParameter,即可。再重新编绎一下,那么这个组件就具备了参数传递功能。