Reporting Services 报表服务器

A.创建报表服务器项目

1.  单击开始,依次指向程序Microsoft SQL Server 2008,然后单击 Business Intelligence Development Studio

2.  在文件菜单上,指向新建,再单击项目

3.  在项目类型列表中,单击商业智能项目

4.  在模板列表中,单击报表服务器项目

5.  在名称中,键入 Tutorial

6.  单击确定以创建项目。

解决方案资源管理器中将显示 Tutorial 项目。

B.创建新的报表定义文件 

1.  在解决方案资源管理器中,右键单击报表,指向添加,再单击新建项

 注意:

如果解决方案资源管理器窗口不可见,请单击视图菜单中的解决方案资源管理器

2.  在添加新项对话框的模板下,单击报表

3.  在名称中,键入 Sales Orders.rdl,再单击添加

此时报表设计器将打开,并在“设计”视图中显示新的 .rdl 文件。

报表设计器是在 Business Intelligence Development Studio 中运行的 Reporting Services 组件。它包含两个视图:设计预览。单击各个选项卡可更改视图。

报表数据窗格中定义数据。在设计视图中定义报表布局。可以在预览视图中运行报表并查看其外观。

向“教程”项目添加报表之后,您需要定义“数据源”,它是报表从关系数据库、多维数据库或其他资源访问数据所使用的一组连接信息。

C.设置连接

在本课中,您将使用 AdventureWorks2008 示例数据库作为数据源。本教程假定此数据库位于本地计算机上安装的默认 SQL Server 数据库引擎实例中。

1. 在报表数据窗格中,单击新建,然后单击数据源

2.   

注意:

如果报表数据窗格不可见,请单击视图菜单上的报表数据

3.  在名称中,键入 AdventureWorks

4.  确保已选中嵌入连接

5.  在类型中,选择 Microsoft SQL Server

6.  在连接字符串中,键入以下内容:

 

复制代码

Data source=localhost; initial catalog=AdventureWorks2008

7.  该连接字符串假定 Business Intelligence Development Studio、报表服务器和 AdventureWorks2008 数据库都已安装在本地计算机中,并且您拥有登录 AdventureWorks2008 数据库的权限。

注意:

如果使用的是带高级服务的 SQL Server Express 或命名实例,则连接字符串必须包括实例信息:

Data source=localhost\SQLEXPRESS; initial catalog=AdventureWorks2008

有关连接字符串的详细信息,请参阅连接数据源 (Reporting Services)和“数据源属性”对话框 ->“常规”。

8.  单击“确定”。名为 AdventureWorks 的数据源即被添加到报表数据窗格中。

D.为报表数据定义 Transact-SQL 查询

1.  在报表数据窗格中,单击新建,然后单击数据集。此时将打开数据集属性对话框。

2.  在名称框中,键入 AdventureWorksDataset

3.  确保数据源名称 AdventureWorks 位于数据源文本框中,并确保查询类型文本

4.  将以下 Transact-SQL 查询键入(或复制并粘贴)到查询框中。

 

复制代码

SELECT

   soh.OrderDate AS [Date],

   soh.SalesOrderNumber AS [Order],

   pps.Name AS Subcat, pp.Name as Product, 

   SUM(sd.OrderQty) AS Qty,

   SUM(sd.LineTotal) AS LineTotal

FROM Sales.SalesPerson sp

   INNER JOIN Sales.SalesOrderHeader AS soh

      ON sp.BusinessEntityID = soh.SalesPersonID

   INNER JOIN Sales.SalesOrderDetail AS sd

      ON sd.SalesOrderID = soh.SalesOrderID

   INNER JOIN Production.Product AS pp

      ON sd.ProductID = pp.ProductID

   INNER JOIN Production.ProductSubcategory AS pps

      ON pp.ProductSubcategoryID = pps.ProductSubcategoryID

   INNER JOIN Production.ProductCategory AS ppc

      ON ppc.ProductCategoryID = pps.ProductCategoryID

GROUP BY ppc.Name, soh.OrderDate, soh.SalesOrderNumber, pps.Name, pp.Name,

   soh.SalesPersonID

HAVING ppc.Name = 'Clothing'

5.  (可选)单击查询设计器按钮。查询将在基于文本的查询设计器中显示。通过单击编辑为文本,可以切换到图形查询设计器。通过单击查询设计器工具栏上的运行(!)按钮来查看查询结果集。

您将看到来自 AdventureWorks2008 数据库中四个不同表的六个字段的数据。查询利用别名等 Transact-SQL 功能。例如,SalesOrderHeader 表称为 soh。

E.向报表布局中添加表数据区域和字段

1.  在工具箱中,单击,再单击设计图面。报表设计器将在设计图面中心绘制一个具有三列的数据区域。

注意:

工具箱可能显示为“报表数据”窗格左侧的一个选项卡。若要打开工具箱,请将指针移到工具箱选项卡上。如果工具箱不可见,请单击视图菜单上的工具箱

2.  在报表数据窗格中,展开 AdventureWorksDataset 数据集以显示字段。

3.  将 Date 字段从报表数据窗格拖到表的第一列中。

将字段拖到第一列中时,会发生两件事。首先,数据单元将在方括号中显示字段名称,也称为“字段表达式”:[Date]。其次,列标题值自动添加到紧邻字段表达式上面的标题行。默认情况下,该列是字段的名称。您可以选中标题行文本,然后键入一个新名称。

4.  将 Order 字段从报表数据窗格拖到表的第二列中。

5.  将 Product 字段从报表数据窗格拖到表的第三列中。

6.  将 Qty 字段拖到第三列的右边缘,直到显示一个垂直光标且鼠标指针带有加号 [+] 为止。释放鼠标按钮后,将为 [Qty] 创建第四列。

7.  请以相同方式添加 LineTotal 字段,并创建第五列。

以下关系图显示已由下列字段填充的表数据区域:Date、Order、Product、Qty 和 Line Total。

预览报表

通过预览报表,您可以不必先将报表发布到报表服务器,即可轻松查看呈现的报表。您可能希望在设计时频繁预览报表。

F.预览报表

  • 单击预览选项卡。报表设计器将运行此报表,并将其显示在“预览”视图中。

下图显示了“预览”视图中的部分报表。

请注意,Line Total 列中货币的小数点后面有六个小数位,并且日期具有不必要的时间戳。此格式问题将在下一课中进行修复。

注意:

您可以在预览报表前后保存报表项目。在文件菜单上,单击全部保存

F.部署报表

1.在Reporting Services 配置管理器 启动服务,把部署的Server拷到项目属性TargetServer:***

2.设置开始页StartItem.

最后说明:

1. 服务器 http://***:8080/ReportServer,可以看到配置。

2. 服务器管理文件夹而也:http://yxj:8080/Reports/Pages/Folder.aspx

 

posted @ 2011-03-04 16:30  北京Net老牛队  阅读(1047)  评论(0编辑  收藏  举报