Занятие 2. Добавление таблицы с помощью мастера таблицы или матриц (построитель отчетов 2.0)
После создания отчета можно использовать мастер таблиц для добавления таблицы или данных в отчет. Мастер помогает определить соединение с источником данных, создать запрос, чтобы указать, какие данные использовать, организовать данные в группы и добавить строки, чтобы отобразить сводные значения для сгруппированных данных.
В этом занятии в качестве источника данных отчета используется образец базы данных AdventureWorks2008.
Запуск мастера таблиц и добавление соединения
Нажмите кнопку Конструктор, чтобы переключиться в конструктор.
В области конструктора под надписью Щелкните, чтобы добавить данные выберитеТаблица или матрица.
Откроется страница Выберите соединение с источником данных.
Если на сервере отчетов существует определенный каталог общих источников данных, то появится список источников данных.
Выберите общий источник данных, который указывает на образец базы данных AdventureWorks2008 или нажмите кнопку Обзор, чтобы перейти к общему источнику данных, а потом нажмите кнопку Открыть.
Нажмите кнопку Далее.
К образцу базы данных был добавлен общий источник данных. Далее предстоит создать запрос, который указывает, какие данные использовать.
Определение запроса Transact-SQL для данных отчета
На странице Создание запроса открывается конструктор реляционных запросов. В этом учебнике будет использоваться текстовый конструктор запросов.
Нажмите кнопку Редактировать как текст. Текстовый конструктор запросов отображает область запросов и область результатов.
Вставьте в поле Запрос следующий запрос Transact-SQL.
SELECT SH.OrderDate ,SH.SalesOrderNumber ,SD.OrderQty ,SD.LineTotal ,P.Name AS [Product] ,PS.Name AS [Subcategory] FROM Sales.SalesOrderHeader AS SH INNER JOIN Sales.SalesOrderDetail AS SD ON SH.SalesOrderID = SD.SalesOrderID INNER JOIN Production.Product AS P ON SD.ProductID = P.ProductID INNER JOIN Production.ProductSubcategory AS PS ON PS.ProductSubcategoryID = P.ProductSubcategoryID INNER JOIN Production.ProductCategory AS PC ON PC.ProductCategoryID = PS.ProductCategoryID WHERE PC.Name = 'Clothing' AND SH.OnlineOrderFlag = 0 ORDER BY P.NameЧтобы выполнить запрос, нажмите кнопку Выполнить (!) на панели инструментов.
Запрос выполняется и отображает результирующий набор для полей OrderDate, SalesOrderNumber, OrderQty, LineTotal, Product, Subcategory из пяти таблиц в базе данных AdventureWorks2008. В запросе используется возможность псевдонимов языка Transact-SQL. Например, таблица SalesOrderHeader называется SH.
В результирующем наборе заголовки столбцов основаны на именах столбцов в таблицах базы данных, но они не сохраняются в отчете.
В наборе данных имена полей основываются на именах столбцов и сохраняются в отчете. После завершения мастера можно просмотреть коллекцию полей набора данных в области данных отчета.
Нажмите кнопку Далее.
Был добавлен набор данных с запросом, который указывает, какие данные использовать в таблице. Далее данные будут размещены по группам.
Организация данных в группы
На странице Размещение полей перетащите поле Product в Значения.
Перетащите OrderQty в Значения и разместите под Product.
По умолчанию для числовых полей вычисляются сводные значения с помощью функции Sum. Чтобы выбрать другую сводную функцию, можно использовать стрелку раскрывающегося списка.
Перетащите LineTotal в Значения и разместите под OrderQty.
Шаги 1, 2 и 3 задают данные, отображаемые в таблице.
Перетащите поле OrderDate в Группы строк.
Перетащите поле SalesOrderNumber в Группы строк и разместите под OrderDate.
Шаги 4 и 5 организуют значения полей сначала по дате, а потом по всем заказам для данной даты.
Нажмите кнопку Далее.
При просмотре отчета таблица отображает каждую дату, все заказы для каждой даты и все продукты, количества и линейные итоги для каждого заказа. Далее будет выбран макет для таблицы.
Добавление подытогов и итогов
На странице Выбор макета под заголовком Параметры убедитесь в том, что выбран параметр Показать подытоги и общие итоги.
Убедитесь, что выбран параметр Заблокированный, подытог ниже.
В области просмотра отображается таблица с пятью строками. При запуске отчета каждая строка отобразится следующим образом:
Первая строка повторится один раз для таблицы, чтобы отобразить заголовки столбцов.
Вторая строка повторится один раз для каждого элемента строки в заказе на продажу и отобразит название продукта, количество заказа и линейный итог.
Третья строка повторится один раз для каждого заказа на продажу и отобразит подытоги для каждого заказа.
Четвертая строка повторится один раз для каждой даты заказа и отобразит подытоги для каждого дня.
Пятая строка повторится один раз для таблицы и отобразит итоговые суммы.
Очистите параметр Развернуть/свернуть группы. В этом учебнике создаваемый отчет не использует функцию углубленной детализации, которая позволяет пользователю разворачивать родительскую групповую иерархию, чтобы отобразить строки дочерней группы и строки подробностей.
Нажмите кнопку Далее.
Был создан макет таблицы. Далее предстоит выбрать стиль.
Задание стиля таблицы
На странице Выбор стиля в области «Стили» выберите стиль.
Стиль задает стиль шрифта, набор цветов и стиль границы. При выборе стиля в области предварительного просмотра отобразится образец таблицы с этим стилем.
Нажмите кнопку Готово.
Таблица добавляется в область конструктора. В таблице содержится 5 столбцов и 5 строк. Область «Группы строк» показывает три группы строк: OrderDate, SalesOrderNumber, Details. Подробные данные — это все данные, которые извлекаются с помощью запроса к набору данных.
Нажмите кнопку Выполнить для предварительного просмотра отчета.
Для каждого элемента строки в заказе на продажу таблица отображает название продукта, заказанное количество и линейный итог. Эти данные организовываются сначала по дате заказа, а потом по номеру заказа.
Следующие шаги
В отчет была успешно добавлена таблица с помощью мастера. Далее предстоит добавить в отчет форматирование. См. раздел Занятие 3. Форматирование отчета (построитель отчетов 2.0).