Reporting Service for SQL server 2000预览研究

系统 1846 0

By Ben


Reporting Service + SP1 for SQL server 2000 预览研究

环境 : WinXP, SQL Server 2000 + SP 3A , .Net 1.1

附件 :         ( 下载附件 )

Project: Reporting Service 报表设计的 Project

         Setup: 报表程序发布安装程序

         Web: Reporting Service Web 应用

         Win: Reporting Service Win 应用

研究思路 :

1. 了解熟悉 Reporting Service 各个基本概念

2. 安装运行 Reporting Service

3. 配置 Reporting Service 设置

4. 设计报表

5. 实现 .Net 程序调用报表

6. 实现安装发布报表

 

概述

Reporting Service 与大家熟悉的水晶报表是同一类东西 : 报表工具 .

基于 Sql Server 2000, 结合 VS.NET 强大的设计器可以轻松实现报表制作

 

Reporting Service 组件 :

1. Web 报表管理器 (http://localhost/Reports)

2. VS.NET 报表设计器

3. 报表 Web Service (http://localhost/ReportServer/ReportService.asmx)

4. Reporting Service Web 端站点 (http://localhost/ReportServer)

 

报表主要构成 :

数据源 (RDS)     配置数据库连接串 . 是一个标准 xml 文件

报表 (RDL)         配置 sql 语句 , 报表样式 . 也是一个标准 xml 文件

 

 

1. 安装

需求环境 : Sql Server 2000 + SP 3A

安装过程中可以设置组件 1, 组件 4 Web 路径 ( 本研究过程设置默认路径 )

过程略

 

2. 配置

进入 Web 报表管理器 (http://localhost/Reports)

A. 管理用户

用户角色分 :

  发布者 可以将报表和链接报表发布到报表服务器。

  浏览者 可以查看文件夹、报表和订阅报表。

  内容管理员   可以管理报表服务器中的内容。包括文件夹、报表和资源。

  我的报表       可以发布报表和链接报表;管理用户的 My Reports 文件夹中的文件夹、报表和资源。

 

用户权限设置与我们熟悉的 SharePoint 很相似 , 可以设置报表 Web 端站点的权限和某个报表的权限 .

 

不同的是 , Reporting Service 权限设置可以结合 Sql 的用户设置来实现更具体的权限分配

关键是报表的数据源连接要以 Windows 身份验证 ( 目的是将 Web 访问的 Windows 身份带到 Sql), 不能为 sa 用户

 

B. 报表的订阅

这点与 SharePoint 也很相似 , 可以将订阅一些报表 . ( 具体实现在本次研究中略过 )

 

C. 报表的历史

可以实现快照功能 , 可以手工创建 snapshot, 也可以实现无人操作 -- 设定 snapshot 计划自动创建 snapshot. ( 具体实现在本次研究中略过 )

 

D. 报表的 " 执行 " 设置

可以设置报表的数据缓冲 , 执行时间 ( 超时时间 ). ( 具体实现在本次研究中略过 )

 

此外 , 可以上传 rds, rdl( 数据源 , 报表 ). 由于它们只是 xml 文件 , 所以可以很灵活 .

ReportingServicesService.exe 这个 window service 解析

 

3. 设计报表

1) 运行 vs.net

2) 创建项目 ->

3) ( 此时可以从项目模板分类里有 " 智能商业项目 " 里的列表中看到有一项是 Reporting Service 项目模板的 ) 选取 Reporting Service 项目模板并创建

创建报表可以使用向导创建 , 高级点的也可以手工创建

项目会自动生成两个 Folder: 共享数据源 , Reports

 

这里介绍手工创建主要过程 :

A. 新建数据源 Folder 共享数据源里利用右键添加新项来创建数据源 , 它会自动生成一个 rds 文件

B. 新建报表 . 同样 , 利用右键添加新项创建报表 , 它会自动生成一个 rdl 文件 . 在这里我们可以像设计 asp.net 页面一样来设计报表样式

C. 发布 / 部署到 Reporting Service Web 端站点 .

首先打开报表的 project 属性看看 :

OverwriteDatasources: true|false 部署时是否覆盖现在的 rds 数据源

TargetFolder: 部署到 Reporting Service Web 端站点的报表的目录 , 比如输入 DemoProject, 需要在 http://localhost/ReportServer/DemoProject 下访问部署的报表

TargetServerURL: 部署到 Reporting Service Web 端站点的 Web 路径

StartItem: 这个是运行在 vs.net 上的 , Ctrl + F5 运行报表 Project 的报表启动项

 

4. .NET 程序调用报表 ( 实例请看附件 )

方式一 : 也是最简单的调用 , 就是直接用 Brower 打开 Reporting Service Web 端站点的报表 .

可以通过 URL 参数作为报表的输入参数 , 具体的请看附件 Web 项目的 DynamicQuery.rdl

方式二 : 通过调用 Reporting Service 提供的 Web Service. 它已经提供有若干的 Web method 供调用

 

5. 发布安装报表

安装 Reporting Service 后会有个 rs.exe 工具 . 路径 "%SYSTEMDRIVE%\Program Files\Microsoft SQL Server\80\Tools\Binn\RS.exe"

可以看看 rs.exe help, 它支持几个特定的参数 , 利用 .rss 脚本实现将 rdl, rds 发布安装到 Web 端站点

经研究已经设计出一个 Setup 程序 . 见附件 Setup 目录

 

总结 :

感觉上 ,

Reporting Server 的缺点 :

Reporting Service 报表设计上还有些不成熟

  设计报表不方便 ; Web 端浏览报表必经导出后才可以打印 ; 有些设置的东西无效 ( 这点好比设置 asp.net Session 生存时间时灵时不灵的现象 );

  复杂的报表 ( 比如嵌套的子报表 , 如附件里的 supplier.rdl) 查询慢 .

 

虽如此 , Reporting Service 还是一个比较 Cool 的报表工具 ,

可取之处也正是如上介绍它的一些的特点



Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=193378


Reporting Service for SQL server 2000预览研究


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论