SQL Server Reporting Services开发步骤

  这是我2006年在CRM系统的时候总结出来的关于开发微软SQL Server Reporting Services的一些方法,当时是写给我们部门其他同事使用的一个手册,拿出来跟大家共享一下了,希望对现在需要做这方面开发的人有所帮助,不过现在这方面的资料已经很多了,2006年的时候只有微软的一个说明,英文的,对于我这样英文不是很好的人,着实琢磨了很久才写出来的.
 
SQL Server 2000 Reporting Services报表制作与发布

Reporting Services 是一个集成了 Visual Studio .NET 2003 SQL Server 2000 的企业级系统,有利于基于数据的报表的创作、发布、管理和用户访问。它是 Microsoft 提供的 SQL Server 2000 的免费附加组件,其升级版本可能会成为 SQL Server 2005 的一个内置组件。

虽然 Reporting Services 需要 SQL Server 2000,但它并不局限于只处理 SQL Server 数据。您可以基于 OLE DBODBC Oracle 数据源来创作报表,也可以用 SQL Server 数据库中的数据来创作。作为一个 Visual Studio .NET 专业人员,很可能会遇到有关 Reporting Services 的问题,这是因为它的报表设计器是通过 Visual Studio .NET 实现的。Reporting Services 支持用于定义报表的 XML 语法,因此也可以使用第三方产品来创作报表,不过报表的默认设计器是 Visual Studio .NET

Reporting Services 的最初版本是通过基于角色的安全性来管理报表访问和创作的。角色的权限以独占方式应用于 Windows 用户和组。Reporting Services 在功能方面极其丰富。它支持多种报表格式和对象。可以使用标准表格式,也可以使用交叉表报表的矩阵对象。还可以在其报表中包含图表和子报表。可以对报表中的值有选择地启用向下追溯功能,并通过参数值使报表变为动态。甚至可以从一个报表向下追溯到另一个报表。还有一种将数据作为窗体显示的自由形式格式。可以用多种格式发布报表,包括 HTMLExcel、以逗号分隔的文本、PDFTIFFOffice Web 组件和 XML

Visual Studio .NET 实现了报表设计器。安装 Reporting Services 之后,在选择用 Visual Studio .NET 启动一个新项目时,将注意到一个新的项目类型。Business Intelligence Projects 类型包含两个模板。使用报表项目向导模板就生成了一组自动进行报表创作的屏幕。使用报表项目模板生成一个可以手动设置格式的空白报表。使用 Visual Studio .NET,可以连接到数据源、开发查询、基于该查询设置报表的格式,以及将完成的报表部署到报表服务器上。

Reporting Services 是作为一个 Web 服务实现的,用户和管理员可以连接到此 Web 服务的站点 http://hostsitename/reports这个服务可以自动公开对调查、访问和管理报表等任务有利的报表管理器 UI。通过这个 UI 公开的功能范围取决于与通过报表管理器连接到报表服务器的 Windows 用户角色相关联的权限。

同时Reporting Services通过Web服务,以Web服务器的方式向外提供报表服务的,可通过连接到此Web站点http://hostsitename/ReportServices进行访问,通过连接到该站点可查看系统中提供的所有报表信息,单击具体报表可浏览具体的报表信息。

一:SQL Server Reporting Services安装

   SQL Server Reporting ServicesSQL Server 2000中是不包含的,需单独安装,而在SQL Server 2005中是作为其一个组件提供的,也就是说在SQL Server 2005中不需单独安装。SQL Server Reporting Services包含三部分:报表管理器,报表服务器,报表设计器。报表管理器和报表服务器必须安装在已经安装有SQL Server 2000企业版的机器上,不能安装在SQL Server 2000个人版的机器上,同时该机器要安装有IIS5.0及其以上的版本的Web服务器,因为报表服务器和报表管理器都是通过Web的形式进行管理的,在安装报表服务器和报表管理器的同时会在SQL Server 2000/2005中创建用于服务和管理的两个数据库,分别是ReportsReportServer,虽说SQL Server Reporting Services可用于不同的数据库,但用于管理所依靠的必须是SQL Server数据库。

   报表设计器用于设计报表的,必须安装在Visual Studio.Net 2003的机器上,通过Visual Studio.Net 2003进行设计。一般要求不要和企业管理器安装同一台机器上。如果安装有SQL Server 2005,则系统默认安装有报表设计器。

     具体安装步骤如下:

 

  

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


 

二:报表制作

1.新建项目:启动Visual Studio.NET 2003→“文件”→“新建”→“项目”,得到如下的信息提示框:

选择“商业智能项目”,在“模板”中是选择“报表项目向导”或直接选择“报表向导”,一般对于刚接触报表设计的话,选择“报表项目向导”的方法,系统会提示每步需要做什么工作,当很熟练的时候一般选择“报表项目”,以便有更多的控制权。

2.设置数据源:系统中提供“共享数据源”,在“解决方案资源管理器”中找到“共享数据集”,如下所示:

右击选择“添加新的数据源”,得到“数据连接属性”,填写要连接的服务器等相关信息,如下所示:

3.添加报表:在“解决方案资源管理器”中找到“Reports”,点右键,选择“添加新报表”是以报表向导的方式给出的,可按照向导的方式完成报表的设计,也可以直接选“添加”→“添加新项”,直接进入报表设计窗口,如下所示:

     输入报表名称和选择的模板就进入报表设计的具体窗口,注意的是在Visual Studio.NET 2003的菜单上多出一个“报表”菜单项,用于设置报表的相关属性的,如在报表中添加参数等,如下所示:

    

4.在具体的报表中添加数据集:在设计窗口把视图切换到“数据”选项卡,如果没有数据,则选择“新建数据集”,如下所示:

在上图中填写数据集的名称,数据源,以及查询字符串,这样新建了一个数据集,查询字符串为查询SQL语句,不过注意的是:可以在SQL语句中使用报表参数,在参数前面添加@区分为参数。查询语句如下:

Select T_Area.Area_Name AS AreaName,

       T_City.City_Name As CityName,

       T_Query_Total.CurrentNum,

       T_Query_Total.LastMonthNum,

       T_Query_Total.LastYearNum,

      dbo.fn_GetYearAndMonth(T_Query_Total.YearMonth) As YearMonth

From T_Query_Total,T_City,T_Area,T_Area_City

Where T_Query_Total.CityID=T_City.City_ID and

      T_City.City_ID=T_Area_City.City_ID and

      T_Area_City.Area_ID=T_Area.Area_ID and

      T_Area.Fac_Code=T_Query_Total.FactoryID and

      T_Query_Total.FactoryID=@FactoryID and

      T_Query_Total.YearMonth between @BeginDate and @EndDate

Order By T_Consumer_Total.YearMonth

参数的设置为,在系统菜单中选择“报表”→“报表参数”,出现如下所示的图象界面:

5.设置报表布局:选择“布局”选项卡,在工具箱中选择要使用的报表工具,一般复合报表选择“矩阵”,图形报表选择“图表”,出现如图所示的窗口:

可设置矩阵属性,选择控件,点右键,选择属性窗口,设置控件属性,如下所示:

   如果要控制报表外观,则选择控件,通过属性窗口设置相关的属性,如下所示:

7.预览报表,报表设计好后可直接预览报表,切换到“预览”选项卡,出现如下所示的窗口,输入条件,点查看报表即可预览报表,如下所示:

三:报表发布

通过报表管理器,把报表发布在报表服务器上,通过Web方式发布,在IE地址栏中输入http://hostsitename/reports如可用http://220.169.60.26/Reports/,出现如下所示的控制页面:

把制作好的报表上传到报表服务器上,点上载文件,出现上载文件页面,如下所示:

     要修改具体的某项,点具体的报表,设置相关的属性,注意的是要设置报表的数据源,一般是新建一个共享数据源,设置的方法同报表设计的时候的共享数据源,如下所示:

设置可访问报表的角色,便于系统报表的访问,默认情况下,报表是使用Windows验证的方式,如不想使用Windows帐号访问报表,可设置其他帐号访问,但必须把要访问的帐号添加到安全角色中。

添加角色的方式是,在上图中选择“安全”选项卡,如下所示:

   选择“新建角色分配”,出现以下页面,填写角色名称,如本例中添加了系统报表以匿名方式访问,则可添加“IUSR_RZXT3,选择该角色只能浏览报表,则选择浏览者角色,点“确定”,如下所示:

posted @ 2008-06-15 08:59  刘华全  阅读(2790)  评论(0编辑  收藏  举报