第 2 课:修改报表数据源属性
在本课中,您将使用报表管理器来选择要传递给收件人的报表。 您将定义的数据驱动订阅将分发在创建基本表报表(SSRS 教程)教程中创建的 Sales Order 报表。 在接下来的步骤中,将修改此报表使用的数据源连接信息,以获取数据。 只有使用已存储凭据访问报表数据源的报表才能通过数据驱动订阅进行分发。 已存储凭据是处理无人参与的报表所必需的。
您还将修改数据集和报表以便使用参数来筛选 [Order] 上的报表,这样,订阅可为特定的顺序和呈现格式输出不同的报表实例。
本主题内容:
修改数据源属性
修改 AdventureWorksDataset
添加报表参数并重新发布报表
重新部署报表
修改数据源属性
使用管理员权限启动报表管理器 (SSRS);例如,右键单击 Internet Explorer 图标,然后单击**“以管理员身份运行”**。
浏览到包含 Sales Orders 报表的文件夹,在该报表的上下文菜单中,单击**“管理”**。
单击**“数据源”**选项卡。
对于**“连接类型”**,请选择 Microsoft SQL Server。
自定义数据源连接字符串如下并且它假定示例数据库位于本地数据库服务器上:
Data source=localhost; initial catalog=AdventureWorks2012
单击**“安全存储在报表服务器中的凭据”**。
键入用户名(使用 domain\user 格式)和密码。 如果您没有访问 AdventureWorks2012 数据库的权限,请指定具有此权限的登录名。
单击**“在与数据源建立连接时用作 Windows 凭据”,再单击“确定”**。 如果没有使用域帐户(例如,如果使用 SQL Server 登录),请不要单击该复选框。
若要验证是否能连接到数据源,请单击**“测试连接”**。
单击**“应用”**。
查看报表以验证报表是否以指定的凭据运行。 若要查看报表,请单击**“查看”选项卡。 注意,报表处于打开状态后,必须选中雇员姓名,然后单击“查看报表”**按钮,以查看该报表。
返回页首
修改 AdventureWorksDataset
在 SQL Server Data Tools 中打开 Sales Orders 报表。
右键单击数据集 AdventureWorksDataset,然后单击**“数据集属性”**。
将语句 WHERE (UPPER(SalesOrderNumber) =UPPER(@OrderNumber) or @OrderNumber IS NULL) 添加到 Group By 语句之前。 完整查询语法如下所示:
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 AS 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 WHERE (UPPER(SalesOrderNumber) =UPPER(@OrderNumber) or @OrderNumber IS NULL) GROUP BY ppc.Name, soh.OrderDate, soh.SalesOrderNumber, pps.Name, pp.Name, soh.SalesPersonID HAVING (ppc.Name = 'Clothing')
单击**“确定”**。
返回页首
添加报表参数并重新发布报表
在**“报表数据”窗格中,单击“新建”,然后单击“参数...”**。
在**“名称”**中,键入 OrderNumber。
在**“提示”**中,键入 OrderNumber。
选择**“允许空值("")”**。
选择**“允许 Null 值”**。
单击**“确定”。 该参数将添加到“报表数据窗格”**,其外观如下图所示:
单击**“预览”**选项卡,运行该报表。请注意报表顶部的参数输入框。 您可以:
在不使用参数的情况下单击“查看报表”以便看到完整的报表。
取消选择 Null 选项,然后键入订单号,例如 so71949,以便只查看报表中的一个订单。
重新部署报表,以便下一课程中的订阅配置可利用您在本课程中进行的更改。 有关在表教程中使用的项目属性的详细信息,请参阅第 6 课:添加分组和总计 (Reporting Services) 中的“将报表发布到报表服务器(可选)”部分。
返回页首
重新部署报表
重新部署报表,以便下一课程中的订阅配置可利用您在本课程中进行的更改。 有关在表教程中使用的项目属性的详细信息,请参阅第 6 课:添加分组和总计 (Reporting Services) 中的“将报表发布到报表服务器(可选)”部分。
在工具栏上,单击**“生成”,然后单击“部署教程”**。
返回页首
后续步骤
您已成功配置了报表,从而可使用已存储凭据获取数据。 接下来,将使用报表管理器中的“数据驱动订阅”页来指定订阅。 请参阅第 3 课:定义数据驱动订阅。