By Ben
              
            
            
          
        
      
    
Reporting Service + SP1 for SQL server 2000 预览研究
      
        
          环境
        
      
      
        
          : WinXP, SQL Server 2000 + SP 
      
                    
      
        
          附件
        
      
      
        
          :         (
          
            下载附件
          
          ) 
      
          
      
        
          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 
      
          
      
        
          安装过程中可以设置组件
        
      
      
        
          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


 
					 
					