第 1 课:使用报表向导设置高级参数教程

新建日期: 2006 年 7 月 17 日

AdventureWorks 示例数据库包含一家虚构公司 Adventure Works Cycles 从个人消费者以及分销商品的商店(称为分销商)那里获得的销售订单。为了探究使用参数的高级功能,您将使用报表向导创建一个显示每家商店分销商销售情况的报表。这是可用于高级参数教程中各课程的基础报表。

在本课中,您将创建名为“高级参数教程”的新报表服务器项目,并运行报表向导以创建显示每个分销商销售情况的报表。您还将修改日期和货币格式,添加处理时间戳并发布报表。

创建报表服务器项目

  1. 单击**“开始”,依次指向“程序”**和 Microsoft SQL Server 2005,再单击 Business Intelligence Development Studio

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

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

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

  5. 在**“名称”**中,键入“高级参数教程”。

    单击**“确定”**以创建项目。“高级参数教程”解决方案将显示在解决方案资源管理器中。

使用报表向导创建报表

  1. 在解决方案资源管理器中,右键单击“报表”文件夹,再选择**“添加新报表”**。报表向导将显示“欢迎使用报表向导”页。

  2. 单击**“下一步”**。将打开“选择数据源”页。

  3. 在**“名称”**文本框中,键入 Resellers。此值将用作报表定义中数据源的名称和数据集的名称。

  4. 在**“类型”**下拉列表中,确保已选中 Microsoft SQL Server

  5. 在**“连接字符串”窗格旁边,单击“编辑”按钮。将打开“连接属性”**对话框。

  6. 在**“服务器名称”**文本框中,键入 AdventureWorks 数据库的服务器。例如 localhost

  7. 在**“连接到数据库”部分的“选择或输入数据库名称”**下拉列表中,选择 AdventureWorks

  8. 在**“登录到服务器”**部分中,选择要使用的身份验证。Windows 身份验证使用 Microsoft Windows 对客户端进行身份验证。SQL Server 身份验证将您提供的用户名和密码与 SQL Server 中维护的有效用户名和密码列表进行比较。

  9. 单击**“确定”“选择数据源”向导页显示根据您在“连接属性”**对话框中所做的选择创建的连接字符串。

  10. 在该页的底部,选择**“使其成为共享数据源”**选项。

  11. 单击**“下一步”**。将打开“设计查询”向导页。

  12. 将以下查询字符串粘贴到查询窗格中。

    SELECT S.CustomerID, SO.SalesOrderNumber, SO.OrderDate, 
       SO.TotalDue, S.Name AS Store, 
       A.City, SP.Name AS StateProvince, CR.Name
        AS CountryRegion, SC.ContactID As StoreContactID, T.[Group] As TerritoryGroup,  Year(SO.OrderDate) as Year
    FROM Sales.Store AS S
        JOIN Sales.CustomerAddress AS CA ON CA.CustomerID = S.CustomerID
        JOIN Person.Address AS A ON A.AddressID = CA.AddressID
        JOIN Person.StateProvince SP ON 
            SP.StateProvinceID = A.StateProvinceID
        JOIN Person.CountryRegion CR ON 
            CR.CountryRegionCode = SP.CountryRegionCode
       JOIN Sales.SalesOrderHeader AS SO ON S.CustomerID = SO.CustomerID
        JOIN Sales.StoreContact SC ON  S.CustomerID = SC.CustomerID
        JOIN Sales.Customer C on S.CustomerID = C.CustomerID
        JOIN Sales.SalesTerritory T on C.TerritoryID = T.TerritoryID
    ORDER BY S.CustomerID 
    

    此查询中的某些字段将在本课之后的其他高级参数教程课程中使用。

  13. 单击**“下一步”**。将打开“选择报表类型”页。

  14. 确保已选中**“表格格式”**。

  15. 单击**“下一步”**。将打开“设计表”页。

  16. 在**“可用字段”窗格中,选择 Store。单击“组”**按钮。

    Store 指定为组,这将按商店组织报表。

  17. 在**“可用字段”**窗格中,选择 SalesOrderNumberOrderDateTotalDue

    若要选择多个字段,请在按住 Ctrl 键的同时单击每个字段。

  18. 单击**“详细信息”**按钮。

    在**“显示字段”**窗格中,单击 OrderDate,然后单击向上箭头按钮。OrderDate 将移动到字段列表的顶部。

  19. 单击**“下一步”**。将打开“选择表布局”向导页。

  20. 确保已选中**“递阶”**。

  21. 选择**“小计”**选项。

  22. 选择**“启用明细”**选项。您将在本教程后面的部分中添加一个参数以控制初始明细状态。

  23. 单击**“下一步”**。将打开“选择表样式”向导页。

  24. 确保已选中样式**“石板”。单击“下一步”**。将打开“完成向导”页。

  25. 在**“报表名称”**文本框中,用 Resellers Worldwide 替换默认报表名称 Report1

  26. 在该页的底部,选择**“预览报表”**选项。

  27. 单击**“完成”**。将在预览视图中打开此报表。

    单击 A Bike Store 旁边的展开按钮 (+) 以展开明细节点。在下一过程中,您将把 TotalDue 的格式修改为整数形式的货币格式,并且将 OrderDate 的格式修改为仅显示 DateTime 字段的日期部分。

更改日期和货币的默认报表格式

  1. 单击**“布局”**选项卡。

  2. 在表中,单击位于 Order Date 列(表详细信息行)中的 OrderDate 字段。OrderDate 字段属性将显示在属性窗口中。

  3. 在属性窗口中,滚动到 Format 属性。单击 Format 属性旁边的文本框,并键入 d。按 Tab 键退出编辑模式。这将把格式从显示日期和时间的默认 DateTime 格式更改为仅显示日期的格式。

  4. 在表中,单击位于 Total Due 列(详细信息行)中的 TotalDue 字段。按 Ctrl 键并单击紧位于 TotalDue 详细信息行上方的文本框。该文本框包含每个商店的组小计。现在,已选中两个文本框。

  5. 在属性窗口中,滚动到 Format 属性。单击 Format 属性旁边的文本框,并键入 C0。按 Tab 键退出编辑模式。这样,所选的两个文本框的格式将从默认货币格式更改为当前货币格式。

  6. (可选)单击 Store 列标题。在属性窗口中,滚动到 Width 属性。键入 2.4 或您的显示分辨率所需的值和默认度量单位以在单行上显示每个组头行。

  7. (可选)单击 Total Due 列标题。在属性窗口中,滚动到 Width 属性。键入 1.25 或您的显示分辨率所需的值和默认度量单位以在单行上显示每个组头行。

  8. 单击**“预览”**。展开明细节点并注意日期和货币值的格式变化。

(可选)您可以在您的报表中包含一个时间戳,指示报表开始处理的时间。如果报表处理需要大量时间,则报表中的数据可能比时间戳所指示的时间更新。

(可选)向报表添加时间戳

  1. 单击**“布局”**选项卡以切换到“布局”视图。

  2. 单击表。将显示表控点。

  3. 单击角部的控点以选中该表。该表将带有灰色轮廓。

  4. 按三次向下键以在报表页上的标题框和表之间创建空白区域。

  5. 从工具箱中将一个文本框拖动到表上方和标题下方之间的空白区域。

  6. 将以下表达式粘贴在此文本框中:

    ="Report Processed Date: " & Globals!ExecutionTime.ToShortDateString() & " " & Globals!ExecutionTime.ToShortTimeString()
    

    这将提供一个时间戳,指出报表何时开始处理。请注意,如果报表运行需要大量时间,则此时间戳不应用作数据时间戳。对于缓存的报表或报表历史记录,此时间提供了开始处理报表数据的时间,它可能与查看报表的时间不同。

  7. 在此文本框处于选中状态的情况下,在报表工具栏的**“字号”**下拉列表中,单击 8

  8. 在报表工具栏中,单击**“前景色”按钮。选择“深红色”**。

  9. 单击**“左对齐”**按钮。

  10. 选择“标题”文本框。按 Ctrl 键并选择新添加的文本框。从**“格式”菜单中,选择“对齐”,再选择“左对齐”**以将两个文本框的左边缘对齐。您首先选择的文本框将作为对齐的定位点。

  11. 在**“格式”菜单中,选择“使大小相同”,再选择“宽度”**。

  12. 在仍选中两个文本框的情况下,从**“格式”菜单中,选择“垂直间距”,再选择“移除”**以移除文本框之间的空白区域。

  13. (可选)单击**“预览”**以查看报表执行时间戳。

添加报表说明

  1. 单击**“布局”**选项卡。

  2. 从**“报表”菜单中,选择“报表属性”。将打开“报表属性”**对话框。

  3. 在**“说明”**文本框中,键入以下文本:“用于演示参数使用方式的 Resellers Worldwide 报表”。

  4. 单击**“确定”**。

发布报表

  1. 在解决方案资源管理器中,右键单击“高级参数教程”项目,然后单击**“属性”**。

  2. 单击**“配置管理器”**。

  3. 在**“配置管理器”对话框的“活动解决方案配置”中,选择“Production”**。

  4. 单击**“关闭”**。

    将返回该项目的**“属性页”**对话框。

  5. 在**“属性页”**对话框的 TargetServerURL 中,键入报表服务器的虚拟目录;例如 http://servername/reportserver。(这是报表服务器的虚拟目录,而不是报表管理器的虚拟目录。)

    Aa337393.note(zh-cn,SQL.90).gif注意:
    如果报表服务器与报表设计器在同一计算机上,您可以使用 localhost 作为服务器名,例如 https://localhost/reportserver 或 https://localhost/reportserver$SQLEXPRESS。有关报表服务器名称的详细信息,请参阅配置报表服务器虚拟目录
  6. 如果**“调试”**属性节点尚未打开,请将其展开以显示 StartItem 属性。单击 StartItem 旁边的文本框,并从下拉列表中选择报表 Resellers Worldwide.rdl。

  7. 单击**“确定”**。

  8. 保存报表项目。在**“文件”菜单上,单击“全部保存”**。

  9. 发布报表。在**“调试”菜单上,单击“开始执行(不调试)”**。

  10. 发布完成后,报表设计器将打开 Internet Explorer。单击 Resellers Worldwide 以查看报表。

    Business Intelligence Development Studio 中,“输出”窗口显示报表部署到报表服务器时的操作和消息。如果“输出”窗口不可见,请在“视图”菜单中选择“输出”

后续步骤

您已成功地为高级参数教程创建了基础报表 Resellers Worldwide。在下一课中,您将学习如何添加一系列级联参数,按逐渐缩小的销售区域类别显示分销商商店。请参阅第 2 课:向报表添加级联参数

请参阅

其他资源

在 Reporting Services 中使用参数

帮助和信息

获取 SQL Server 2005 帮助