Поделиться через


Занятие 3. Определение набора данных для табличного отчета (службы Reporting Services)

После определения источника данных необходимо определить набор данных. В службах Reporting Services данные, используемые в отчетах, содержатся в наборе данных. Набор данных содержит указатель на источник данных и запрос, используемый в отчете, а также вычисляемые поля и переменные.

Можно воспользоваться конструктором запросов, чтобы создать запрос в конструкторе отчетов. В этом учебнике предстоит создать запрос, получающий из базы данных AdventureWorks2008 сведения о заказах на продажу.

Определение запроса 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».

    Нажмите кнопку ОК для выхода из конструктора запросов.

  6. Нажмите кнопку ОК для выхода из диалогового окна Свойства набора данных.

    Поля набора данных AdventureWorksDataset появятся в области «Данные отчета».

Следующая задача

Определен запрос, получающий данные для отчета. Далее предстоит создать макет отчета. См. раздел Занятие 4. Добавление таблицы в отчет (службы Reporting Services).