- •Работа 2. Освоение инструментария дизайнера отчетов. SqlServer2005ReportingServices Цели и задачи
- •Задание
- •Технология выполнения работы № 2.1
- •Технология выполнения работы № 2.2
- •Технология выполнения работы № 2.3
- •Технология выполнения работы № 2.4
- •Задания повышенной сложности для самостоятельной работы
Работа 2. Освоение инструментария дизайнера отчетов. SqlServer2005ReportingServices Цели и задачи
В процессе выполнения работы студенты должны овладеть информационной технологией, позволяющей:
Создавать и модифицировать дизайн отчетов в Business Intelligence Studio;
Развертывать готовые отчеты для корпоративного использования
Задание
Создать простой отчет
Создать многоуровневый отчет с группировками и параметрами
Создать набор связанных отчетов
Создать отчет с группировками произвольной вложенности
Установить готовый отчет на сервер и провести административное разграничение прав доступа к нему
Создать модель метаданных для формирования произвольных отчетов в интерактивном дизайнере отчетов Report Builder
Технология выполнения работы № 2.1
Создайте новый проект SSRS_1 и добавьте в него пустой отчет
Запустите Business Intelligence Studio.
File \ New\ Project \ Report Server Project
Выберите галочку «Создать директорию для решения»
Задайте имя для проекта. Решение может содержать множество ПРОЕКТОВ, которые добавляются к уже существующему решению. Каждый проект может содержать множество отчетов. Проект соответствует портфелю отчетов на сервере отчетности
В свойствах проекта выберите Add New Item \ Report Wizard
Используйте диалог Report Wizard для пошагового упрощенного создания отчета
Сконфигурируйте источник данных для отчета (DataSource)
Укажите БД AdventureWorksDW , расположенную на локальном сервере
В качестве запроса для набора данных (Design Query)введите
SELECT dbo.DimProductSubCategory.EnglishProductSubCategoryName, dbo.DimProduct.EnglishProductName, dbo.FactInternetSales.SalesAmount,
dbo.DimProductCategory.EnglishProductCategoryName
FROM dbo.FactInternetSales INNER JOIN
dbo.DimProduct ON dbo.FactInternetSales.ProductKey = dbo.DimProduct.ProductKey INNER JOIN
dbo.DimProductSubCategory ON dbo.DimProduct.ProductSubCategoryKey = dbo.DimProductSubCategory.ProductSubCategoryKey INNER JOIN
dbo.DimProductCategory ON dbo.DimProductSubCategory.ProductCategoryKey = dbo.DimProductCategory.ProductCategoryKey
WHERE EnglishProductCategoryName = 'Bikes'
Выберите тип отчета Select the Report Type - Tabular
Выберите поля для формирования секции Details отчета - Available Fields - EnglishProductName, SalesAmount. (нажать на соответствующую стрелку)
Выберите понравившийся стиль таблицы Table Style
Отредактируйте внешний вид отчета
Перейдите в рабочую область Layout
В секции Body расширьте колонку EnglishProductName
Отредактируйте заголовок отчета - “Bike Sales Report.”
Запустите предварительный просмотр созданного отчета в области Preview
Технология выполнения работы № 2.2
Добавьте новый отчет в созданный проект
В свойствах проекта выберите Add New Item \ Report
Создайте набор данных для формирования отчета
Перейдите в рабочую область Data и выберите опцию New Dataset
Подсоедините набор данных к БД AdventureWorksDW, расположенной на локальном сервере
В свойство Query поместите SQL-запрос из первого примера без предиката Where
Назовите полученный набор данных - SalesData
Создайте внешний вид отчета
Перейдите в рабочую область Layout
Добавьте в область дизайна компонент List (список) с панели инструментов, расположенной слева
В окне данных DataSets (тоже слева) раскройте созданный набор SalesData и получите список доступных полей
Перенесите поле EnglishProductCategoryName внутрь компонента List
В свойствах Properties (по правой кнопке мыши) компонента List – укажите свойство группировки - Grouping по полю Fields!EnglishProductCategoryName.Value
Перенесите также поле SalesAmount – по умолчанию оно сразу же добавится в виде агрегата суммы для группировки. Установите свойство Format для поля суммы - 0,0.00
Добавьте вложенный список для подкатегорий товаров
Аналогично внутри первого списка разместите второй список
Группировка по полю - Fields!EnglishProductSubCategoryName.Value
Добавьте детализирующий список для самих товаров
Аналогично внутри второго списка разместите третий
Не устанавливайте группировок
Перенесите поля EnglishProductName и SalesAmount внутрь самого вложенного компонента List
Запустите просмотр отчета
Добавьте гипертекстовое оглавление для отчета для уровня подкатегорий
В свойствах поля Подкатегорий перейдите на закладку Navigation
Внесите значение для составления оглавления – Document Map Label - Fields!EnglishProductSubCategoryName.Value
Запустите просмотр отчета
Добавьте параметризацию
В наборе данных внесите правку в текст запроса в предикат условия: WHERE EnglishProductCategoryName = @Category. Параметры в дизайнере отчетов помечаются специальным символом @
Запустите просмотр и введите значение параметра - Bikes
Добавьте новый набор данных , поместив в него запрос
select * from dbo.DimProductCategory и назовите его - dictCategory
В меню Report\Parameters назначьте для параметра категории свойство выбора параметров из списка Available Fields – from query – укажите новый набор данных dictCategory и поле EnglishProductCategoryName для ключа и для отображения значения параметра (Key field, Value field)
Запустите просмотр и введите значение параметра Bikes – но уже через выпадающий список выбора