教程:为表报表定义数据集 (Reporting Services)
为分页报表定义数据源后,请为数据源定义数据集。 在 Reporting Services 中,数据集包含在报表中使用的数据。 数据集包括一个指向数据源的指针、报表使用的查询、计算字段和变量。
在本教程中,可了解:
- 为表报表定义数据集。
- 创建一个 Transact-SQL 查询来检索销售订单信息。
先决条件
为报表数据定义 Transact-SQL 查询
创建一个 Transact-SQL 查询来从 AdventureWorks2022
数据库检索销售订单信息。
在 Visual Studio 中打开“销售订单”报表定义文件 (.rdl)。
在“报表数据”窗格中,选择“新建”>“数据集...”。“数据集属性”对话框将打开,并突出显示“查询”部分。
在“名称”框中,输入“AdventureWorksDataset”。
选择“使用在我的报表中嵌入的数据集”选项。
从“数据源”下拉框中,选择“AdventureWorks2022”。
对于“查询类型”,选择“文本”选项。
将以下 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'
(可选)选择“查询设计器”。 查询将在基于文本的“查询设计器”中显示。 选择“运行”以在“查询设计器”工具栏上查看查询 ( ) 的结果。 显示的数据集包含来自
AdventureWorks2022
数据库的四个表的六个字段。 查询利用别名等 Transact-SQL 功能。 例如,SalesOrderHeader 表称为soh
。选择“确定”以退出查询设计器。
选择“确定”以退出“数据集属性”对话框。 “报表数据”窗格将显示 AdventureWorksDataset 数据集和字段。