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

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

Чтобы создать отчет, можно использовать «Конструктор отчетов». В этом учебнике будет создан запрос, получающий из базы данных База данных AdventureWorks2008R2 сведения о заказах на продажу.

Определение запроса 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. (Дополнительно) Нажмите кнопку Конструктор запросов. В текстовом конструкторе запросов будет отображен запрос. Можно переключиться к графическому конструктору запросов, нажав кнопку Редактировать как текст. Чтобы просмотреть результаты выполнения запроса, нажмите кнопку Выполнить (!) на панели инструментов конструктора запросов.

    Будут показаны данные из шести полей четырех различных таблиц из базы данных База данных AdventureWorks2008R2. В запросе используется возможность псевдонимов языка Transact-SQL. Например, таблица SalesOrderHeader называется soh.

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

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

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

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

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