Руководство. Определение набора данных для табличного отчета (службы Reporting Services)
После определения источника данных для отчета с разбивкой на страницы необходимо определить набор данных для источника данных. В службах Reporting Services набор данных содержит данные, используемые в отчетах. Набор данных включает указатель на источник данных и запрос для использования отчетом, вычисляемыми полями и переменными.
Изучив это руководство, вы:
- Определите набор данных для отчета таблицы.
- Создайте запрос Transact-SQL для получения сведений о заказах на продажу.
Необходимые компоненты
- Завершение шага 1. Создание проекта сервера отчетов.
- Завершение шага 2. Указание сведений о подключении.
Определение запроса Transact-SQL для данных отчета
Создайте запрос Transact-SQL, который извлекает сведения о заказе на продажу AdventureWorks2022
из базы данных.
Откройте файл определения отчета заказа на продажу (RDL) в Visual Studio.
В области данных отчета выберите новый>набор данных.... Откроется диалоговое окно "Свойства набора данных" с выделенным разделом "Запрос".
В поле "Имя" введите 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'
(Необязательно) Выберите конструктор запросов. Запрос отображается в текстовом конструкторе запросов. Выберите команду run , чтобы просмотреть результаты запроса ( ) на панели инструментов конструктора запросов. Отображаемый набор данных содержит шесть полей из четырех таблиц в
AdventureWorks2022
базе данных. В запросе используется возможность псевдонимов языка Transact-SQL. Например, называетсяsoh
таблица SalesOrderHeader.Нажмите кнопку "ОК ", чтобы выйти из конструктора запросов.
Нажмите кнопку "ОК ", чтобы выйти из диалогового окна "Свойства набора данных". Панель Данные отчета теперь отображает набор данных AdventureWorksDataset и его поля.