Руководство по созданию базового табличного отчета (построитель отчетов)

Для создания табличных отчетов по данным SQL с помощью SQL Server Reporting Services (SSRS) можно использовать построитель отчетов. В этом руководстве показано, как создать базовый табличный отчет на основе примеров данных о продажах.

Изучив это руководство, вы:

  • Следуйте инструкциям мастера для создания табличного отчета
  • Определите встроенный источник для данных таблицы
  • Запустите запрос, чтобы получить значения данных
  • Упорядочение и форматирование данных таблицы и добавление итогов
  • Проектирование и сохранение отчета
  • Просмотр экспортированного отчета в Microsoft Excel

Предполагаемое время выполнения этого руководства составляет 20 минут.

На следующей иллюстрации показан табличный отчет, создаваемый в этом руководстве.

Снимок экрана: пример отчета таблицы, подготовленного в этом руководстве, в котором показаны данные о продажах продуктов.

Предварительные условия

Дополнительные сведения о требованиях см "Требования для руководств (Построитель Отчетов)".

Создание отчета с помощью мастера таблиц или матриц

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

Запустите мастер и создайте табличный отчет.

  1. Запустите построитель отчетов на компьютере, веб-портале Служб Reporting Services или в режиме интеграции с SharePoint.

    Откроется диалоговое окно "Новый отчет" или "Набор данных". Если диалоговое окно не открывается, нажмите кнопку "Создать файл>".

  2. Выберите вкладку "Создать отчет " и выберите мастер таблиц или матриц на правой панели:

    Снимок экрана: выбор нового отчета в мастере таблиц или матриц.

Укажите подключение к данным

Подключение к данным содержит информацию для подключения к внешнему источнику данных, например, к базе данных SQL Server. Обычно сведения о соединении и учетные данные, которые будут использоваться при соединении с источником данных, можно получить у владельца источника данных. Чтобы указать подключение к данным, можно использовать общий источник данных с сервера отчетов или создать внедренный источник данных, используемый только в этом отчете.

В этом руководстве вы используете встроенный источник данных. Дополнительные сведения об использовании общего источника данных см. в статье "Альтернативные способы получения подключения к данным" (построитель отчетов).

Создайте внедренный источник данных для подключения к данным:

  1. На странице "Выбор набора данных" выберите параметр "Создать набор данных" и нажмите кнопку "Далее".

  2. На странице "Выбор подключения к источнику данных" нажмите кнопку "Создать".

  3. В диалоговом окне "Свойства источника данных" задайте следующие свойства на вкладке "Общие".

    Снимок экрана: настройка общих параметров в диалоговом окне

    1. Задайте для свойства Name источника данных значение Product_Sales.

    2. Для свойства "Выбор типа подключения" убедитесь, что выбран Microsoft SQL Server.

    3. Для свойства строки подключения введите следующее значение, где <servername> имя экземпляра SQL Server:

      Data Source=<servername>  
      

      Так как вы используете запрос, содержащий данные вместо получения данных из базы данных, строка подключения не содержит имя базы данных. Для получения дополнительной информации см. Предварительные требования для учебных пособий (построитель отчетов).

  4. Перейдите на вкладку "Учетные данные" и выберите предпочитаемый метод доступа для источника данных. Введите учетные данные по мере необходимости:

    Снимок экрана: настройка параметров учетных данных в диалоговом окне

  5. На вкладке "Общие " выберите "Проверить подключение" , чтобы проверить, можно ли подключиться к источнику данных.

    Появится всплывающее сообщение : "Соединение успешно создано". Нажмите кнопку "ОК ", чтобы очистить всплывающее сообщение.

  6. Чтобы завершить настройку источника данных, нажмите кнопку "ОК".

  7. Чтобы продолжить в мастере, нажмите «Далее».

Создать запрос

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

Примечание.

В примере руководства запрос содержит значения данных, поэтому он не нуждается во внешнем источнике данных. Этот подход делает запрос довольно длинным, но он полезен для целей обучения. В стандартной бизнес-среде запрос не содержит значения данных.

Создайте запрос, выполнив следующие действия:

  1. На странице Создание запроса открывается конструктор реляционных запросов. В этом руководстве используется текстовый конструктор запросов:

    Снимок экрана: страница

  2. Выберите "Изменить как текст". Текстовый конструктор запросов отображает панель запросов и панель результатов.

  3. Вставьте следующий запрос Transact-SQL в верхней части поля:

    SELECT CAST('2009-01-05' AS date) as SalesDate, 'Accessories' as Subcategory,   
       'Carrying Case' as Product, CAST(9924.60 AS money) AS Sales, 68 as Quantity  
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate, 'Accessories' as Subcategory,  
       'Tripod' as Product, CAST(1350.00 AS money) AS Sales, 18 as Quantity  
    UNION SELECT CAST('2009-01-11' AS date) as SalesDate, 'Accessories' as Subcategory,  
       'Lens Adapter' as Product, CAST(1147.50 AS money) AS Sales, 17 as Quantity  
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate, 'Accessories' as Subcategory,  
       'Mini Battery Charger' as Product, CAST(1056.00 AS money) AS Sales, 44 as Quantity  
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate,  'Accessories' as Subcategory,  
       'Telephoto Conversion Lens' as Product, CAST(1380.00 AS money) AS Sales, 18 as Quantity  
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate,'Accessories' as Subcategory,   
       'USB Cable' as Product, CAST(780.00 AS money) AS Sales, 26 as Quantity  
    UNION SELECT CAST('2009-01-08' AS date) as SalesDate, 'Accessories' as Subcategory,   
       'Budget Movie-Maker' as Product, CAST(3798.00 AS money) AS Sales, 9 as Quantity  
    UNION SELECT CAST('2009-01-09' AS date) as SalesDate, 'Camcorders' as Subcategory,   
       'Business Videographer' as Product, CAST(10400.00 AS money) AS Sales, 13 as Quantity  
    UNION SELECT CAST('2009-01-10' AS date) as SalesDate, 'Camcorders' as Subcategory,   
       'Social Videographer' as Product, CAST(3000.00 AS money) AS Sales, 60 as Quantity  
    UNION SELECT CAST('2009-01-11' AS date) as SalesDate,  'Digital' as Subcategory,   
       'Advanced Digital' as Product, CAST(7234.50 AS money) AS Sales, 39 as Quantity  
    UNION SELECT CAST('2009-01-07' AS date) as SalesDate,  'Digital' as Subcategory,   
       'Compact Digital' as Product, CAST(10836.00 AS money) AS Sales, 84 as Quantity  
    UNION SELECT CAST('2009-01-08' AS date) as SalesDate,  'Digital' as Subcategory,   
       'Consumer Digital' as Product, CAST(2550.00 AS money) AS Sales, 17 as Quantity  
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate, 'Digital' as Subcategory,   
       'Slim Digital' as Product, CAST(8357.80 AS money) AS Sales, 44 as Quantity  
    UNION SELECT CAST('2009-01-09' AS date) as SalesDate, 'Digital SLR' as Subcategory,   
       'SLR Camera 35mm' as Product, CAST(18530.00 AS money) AS Sales, 34 as Quantity  
    UNION SELECT CAST('2009-01-07' AS date) as SalesDate, 'Digital SLR' as Subcategory,   
       'SLR Camera' as Product, CAST(26576.00 AS money) AS Sales, 88 as Quantity
    
  4. На панели инструментов конструктора запросов нажмите кнопку "Выполнить " (!):

    Снимок экрана: запуск запроса для проверки результирующих наборов.

    Запрос выполняется и отображает результирующий набор для полей SalesDate, Subcategory, Product, Sales и Quantity.

    В результирующем наборе столбцам присваиваются заголовки в соответствии с именами в запросе. В наборе данных заголовки столбцов становятся именами полей и сохраняются в отчете. После завершения работы мастера можно использовать область данных отчета для просмотра коллекции полей набора данных.

  5. Чтобы продолжить в мастере, нажмите «Далее».

Организовать данные в группы

При выборе полей данных для групп создается таблица с строками и столбцами, отображающими подробные данные и агрегированные данные. В следующей процедуре первые два шага указывают значения данных, отображаемые в таблице, и последние два шага упорядочивают значения.

Упорядочение данных таблицы в группы на странице "Упорядочивание полей ":

  1. В поле "Доступные" перетащите поле "Продукт", а затем поле "Количество" в поле "Значения". Поместите поле "Количество" после поля Product.

    Функция Sum автоматически агрегирует данные "Количество", которая является статистической функцией по умолчанию для числовых полей. Значение вычисляется по формуле [Sum(Quantity)].

    Совет

    Вы можете выбрать стрелку раскрывающегося списка рядом с агрегатом [Sum(Quantity)] для просмотра других агрегатных функций. Для этого упражнения оставьте агрегатную функцию равным Sum.

  2. Перетащите поле "Продажи" в поле "Значения" и поместите его после агрегирования [Sum(Quantity)].

    Функция Sum агрегирует данные продаж. Значение равно [Сумма(Продажи)].

  3. Перетащите поле SalesDate, а затем поле Subcategory в поле "Группы строк". Поместите поле подкатегории после поля SalesDate.

    Снимок экрана, на котором показано, как упорядочить поля данных таблицы.

  4. Чтобы продолжить в мастере, нажмите «Далее».

Добавьте промежуточные и общие строки

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

Выполните следующие действия, чтобы добавить промежуточные итоги и итоги для данных таблицы:

  1. На странице выбора макета в разделе "Параметры" настройте следующие параметры:

    Снимок экрана: выбор параметров макета таблицы.

    1. Выберите вариант "Показать промежуточные итоги" и "Общие итоги".

    2. Выберите параметр "Заблокированный, промежуточный итог ниже".

    3. Снимите флажок с опции "Развернуть/свернуть группы".

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

  2. Нажмите Далее, чтобы проверить таблицу в области предварительного просмотра. Вы увидите пять строк, демонстрирующих макет таблицы при запуске отчета:

    • Первая строка повторяется один раз для таблицы, чтобы отобразить заголовки столбцов.

    • Вторая строка повторяется для каждой позиции в заказе на продажу, чтобы отобразить название продукта, количество заказанного и итоговую сумму по строке.

    • Третья строка повторяется один раз для каждой категории заказа на продажу, чтобы отобразить промежуточные итоги для каждой категории.

    • Четвертая строка повторяется один раз для каждой даты заказа, чтобы отобразить промежуточные итоги в день.

    • Пятая строка повторяется один раз для таблицы, чтобы показать общие итоги.

  3. Выберите Готово.

    Построитель отчетов добавляет вашу таблицу в рабочую область. Таблица содержит пять столбцов и пять строк. В области "Группы строк" показаны три группы строк: SalesDate, Subcategory и Details. Подробные данные — это все данные, извлекаемые запросом набора данных.

    Снимок экрана нового отчета в таблице, открытого в области проектирования в Report Builder.

Процесс мастера завершен, и теперь у вас есть отчет в таблице с примерными данными. В следующих разделах можно отформатировать определенные табличные данные для отображения значений в форме, полезной для чтения.

Форматирование данных таблицы

Построитель отчетов отображает значения данных таблицы в отчете с помощью стандартных форматов, таких как числа, даты, время и т. д. Вы можете использовать функции форматирования на вкладке "Главная ", чтобы изменить отображение данных таблицы.

Это может быть полезно для форматирования денежных значений в локальной валюте, а не в качестве общих чисел. Другой сценарий — это табличные данные, которые суммируют изменения в значении в течение короткого периода времени. Это может быть более полезно для отображения данных только в минутах или часах, а не для отображения месяца, дня и года.

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

Отображение значений валюты

По умолчанию сводные данные для поля "Продажи" отображаются как общее число в отчете таблицы. Значение можно более правильно выразить, применяя формат валюты.

Выполните следующие действия, чтобы отформатировать данные таблицы в виде валюты:

  1. В Построитель отчетов выберите заголовок столбца Sales в табличном отчете.

    Снимок экрана, показывающий, как выбрать заголовок столбца

  2. На вкладке "Главная " в группе "Число " выберите стили заполнителей ([123]), а затем выберите примеры значений:

    Снимок экрана, на котором показано, как выбрать параметр

  3. В отчете таблицы в столбце Sales одновременно выберите четыре ячейки, содержащие значение [Sum(Sales)].

  4. На вкладке "Главная" в группе "Число " выберите "Валюта " ($). Выбранные ячейки изменяются для отображения значений данных с помощью формата валюты.

    Снимок экрана: изменение формата выбранных ячеек таблицы для отображения в виде валюты.

    Если ваш региональный параметр — английский (США), то в примере по умолчанию отображается значение в долларах[$12,345.00].

    Если вы не видите пример значения валюты, проверьте стиль заполнителя для ячеек. На вкладке "Главная" в группе "Число подтвердите, что для параметра "Стили заполнителей" ([123]) задано значение "Примерные значения".

  5. На вкладке "Главная" выберите "Запустить ", чтобы просмотреть отчет.

    Подтвердите, что суммарные значения в столбце "Продажи" отображаются в формате валюты. Ниже приведен пример из отчета:

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

Показать даты (месяц, день, год)

По умолчанию в поле SalesDate отображаются данные даты (месяц, день, год) и время (час, минута, вторая). Вы можете изменить формат этих значений, чтобы отобразить только дату.

Отформатируйте значения, чтобы отобразить только дату:

  1. На вкладке "Выполнить" выберите "Конструктор", чтобы вернуться в режим конструктора.

  2. В табличном отчете выберите ячейку, содержащую [SalesDate] значения.

  3. На вкладке "Главная" в группе "Число" разверните раскрывающееся меню "Формат " и выберите "Дата".

    Снимок экрана: изменение формата выбранной ячейки таблицы, отображаемой только в качестве даты.

    В ячейке отображается пример даты [1/31/2000].

    Если вы не видите пример значения даты, проверьте стиль заполнителя. На вкладке "Главная" в группе "Число подтвердите, что для параметра "Стили заполнителей" ([123]) задано значение "Примерные значения".

  4. На вкладке "Главная" выберите "Запустить ", чтобы просмотреть отчет.

    Убедитесь, что значения в столбце SalesDate отображаются только в виде дат (месяц, день, год). Ниже приведен пример из отчета:

    Снимок экрана: часть отчета таблицы, в которой отображается только дата без времени.

Использование настраиваемых форматов дат

Можно также указать настраиваемый формат для определенного поля в таблице:

  1. На вкладке "Выполнить" выберите "Конструктор", чтобы вернуться в режим конструктора.

  2. В таблице отчета перейдите к той ячейке, которая ранее содержала значение [SalesDate].

  3. Щелкните ячейку правой кнопкой мыши и выберите свойства текстового поля:

    Снимок экрана: открытие диалогового окна

  4. В диалоговом окне "Свойства текстового поля" настройте форматирование ячеек:

    Снимок экрана: изменение формата выбранной ячейки таблицы на настраиваемый формат с помощью свойств текстового поля.

    1. На панели вкладок выберите "Номер".

    2. В списке Категория выберите пункт Дата.

    3. В списке "Тип" выберите 31 января 2000 г.

      В разделе " Пример" показана предварительная версия конфигурации форматирования.

    4. Нажмите кнопку "ОК ", чтобы применить настраиваемое форматирование.

    Ячейка таблицы обновляется для отображения примера даты [January 31, 2000].

  5. На вкладке "Главная" выберите "Запустить ", чтобы просмотреть отчет.

    Убедитесь, что значения в столбце SalesDate отображают имя месяца, а не номер месяца. Ниже приведен пример из отчета:

    Снимок экрана: часть табличного отчета, где месяц указан как 'январь', а не числом '1'.

Форматирование таблицы

Помимо применения определенных форматов к данным в таблице, можно также настроить атрибуты всего, например ширину столбца, высоту строки и заголовок таблицы. В следующих разделах показаны эти процедуры.

Изменение ширины столбца

По умолчанию в каждой ячейке таблицы есть текстовое поле. Текстовое поле расширяется по вертикали, чтобы разместить текст при отрисовке страницы. В отчете, готовом для просмотра, каждая строка расширяется по высоте самого высокого текстового поля в строке. Высота строки на поверхности конструктора не влияет на высоту строки в сгенерированном отчёте.

Чтобы уменьшить объем вертикального пространства для каждой строки, можно развернуть ширину столбца, чтобы вместить ожидаемое содержимое текстовых полей в столбце в одной строке.

Выполните следующие действия, чтобы изменить ширину столбцов таблицы:

  1. На вкладке "Выполнить" выберите "Конструктор", чтобы вернуться в режим конструктора.

  2. В области конструктора выберите в таблице, чтобы отобразить дескриптор строки и столбца. Ручки отображаются как серые полосы по краям таблицы.

    Снимок экрана, показывающий дескрипторы строк и столбцов для таблицы на области конструктора в Report Builder.

  3. Удерживайте ручки и перетащите их, чтобы увеличить ширину таблицы.

    Совет

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

  4. Наведите указатель на линию между столбцами подкатегории и Product, чтобы отобразить двойной курсор со стрелкой.

  5. Выберите и перетащите строку, чтобы увеличить ширину столбца Product. Увеличьте ширину, чтобы имена продуктов в столбце отображались в одной строке в отрисованном отчете.

  6. На вкладке "Главная" выберите "Запустить ", чтобы просмотреть отчет.

    Подтвердите, что значения в столбце Product отображаются в одной строчке. Ниже приведен пример из отчета:

    Снимок экрана: часть отчета таблицы, в которой увеличена ширина столбца Product, чтобы разрешить имена продуктов отображаться в одной строке.

Настройка заголовка отчета

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

Существует множество способов настройки заголовка отчета, таких как использование различных стилей шрифта, размеров текста и цветов. Части заголовка и даже отдельные символы могут использовать отдельное форматирование. Дополнительные сведения см. в разделе "Формат текста" в текстовом поле в отчетах с разбивкой на страницы (построитель отчетов).

Выполните следующие действия, чтобы настроить название отчета:

  1. На вкладке "Выполнить" выберите "Конструктор", чтобы вернуться в режим конструктора.

  2. В области конструктора выберите текстовое поле Щелкните, чтобы добавить заголовок:

    Снимок экрана, на котором показано, как выбрать текстовое поле

  3. В текстовом поле «Щелкните, чтобы добавить название», введите текст «Продажи продуктов», а затем щелкните за пределами текстового поля.

  4. Щелкните правой кнопкой мыши текстовое поле и выберите свойства текстового поля.

  5. В диалоговом окне "Свойства текстового поля" настройте форматирование текста:

    1. На панели вкладок выберите "Шрифт".

    2. В списке шрифтов выберите Arial.

    3. В списке Размер выберите 18пт.

    4. В списке Цвет выберите Синий.

    5. Для стиля выберите Полужирный.

      В разделе " Пример" показана предварительная версия конфигурации форматирования.

    6. Нажмите кнопку "ОК ", чтобы применить форматирование заголовка.

  6. На вкладке "Главная" выберите "Запустить ", чтобы просмотреть отчет.

    Подтвердите, что в таблице отображается обновленный заголовок:

    Снимок экрана, на котором показан обновленный заголовок отчета в таблице.

Сохранение отчета

Сохраните отчет на сервере отчетов или на своем компьютере. Если отчет не сохраняется на сервере отчетов, многие функции служб Reporting Services, такие как вложенные отчеты, недоступны.

Выполните следующие действия, чтобы сохранить отчет на сервере отчетов:

  1. Выберите Файл>Сохранить как.

  2. В диалоговом окне "Сохранить как отчет" выберите "Последние сайты и серверы" в правой области.

  3. Выберите или введите имя сервера отчетов, в котором у вас есть разрешение на сохранение отчетов.

    Появится сообщение «Соединение с сервером отчетов». После завершения подключения откроется папка отчета по умолчанию. Администратор сервера отчетов указывает расположение папки по умолчанию.

  4. Для имени отчета замените значение по умолчанию без имениProduct_Sales.

  5. Выберите Сохранить.

Отчет будет сохранен на сервере отчетов. В строке состояния в нижней части окна отображается имя сервера отчетов, к которому вы подключены.

Сохранение отчета на компьютере

Вы также можете сохранить отчет на компьютере:

  1. Выберите Файл>Сохранить как.

  2. Выберите "Рабочий стол", "Мои документы" или "Мой компьютер" и перейдите к папке, в которой вы хотите сохранить отчет.

  3. Для имени отчета замените значение по умолчанию без имениProduct_Sales.

  4. Выберите Сохранить.

Экспорт отчета

Отчеты можно экспортировать в различные форматы, такие как Microsoft Excel и файлы с разделим запятыми (CSV). Дополнительные сведения см. в разделе "Экспорт отчетов с разбивкой на страницы" (построитель отчетов).

В этом руководстве вы экспортируете отчет в Excel и задаете свойство отчета, чтобы указать пользовательское имя вкладки таблицы.

Установить имя листа Excel

Выполните следующие действия, чтобы указать имя вкладки книги Excel:

  1. Вернитесь в режим дизайна, выбрав его.

  2. Выберите вкладку "Вид" и выберите "Свойства", чтобы открыть панель "Свойства".

  3. Выберите в любом месте на поверхности конструкции, но за пределами табличного отчета.

    Элементы, перечисленные в области свойств, соответствуют тому, что вы выбираете на рабочей поверхности конструктора. Для этой процедуры необходимо выбрать вне области отчета.

  4. В области "Свойства" разверните группу Other и найдите свойство InitialPageName.

    Совет

    Если свойство не отображается в области "Свойства ", выберите в верхней части области алфавитно , чтобы упорядочить все свойства в алфавитном порядке.

  5. Для свойства InitialPageName введите имя вкладки книги Excel Product Sales.

    Снимок экрана, на котором показано, как задать начальное имя страницы для отчета таблицы в области

Экспорт отчета в Excel

Экспортируйте отчет в Excel, выполнив следующие действия:

  1. На вкладке "Главная" выберите "Запустить ", чтобы просмотреть отчет.

  2. На панели инструментов выберите "Экспорт>Excel".

  3. В диалоговом окне "Сохранить как" перейдите к месту сохранения файла.

  4. Введите имя файла Product_Sales_Excel.

  5. Убедитесь в том, что выбран тип файла Excel(*.xlsx).

  6. Выберите Сохранить.

Просмотр отчета в Excel

Теперь вы можете просмотреть отчет о таблице в Excel:

  1. Откройте папку, в которой вы сохранили книгу, и дважды щелкните файл, Product_Sales_Excel.xlsx.

  2. Убедитесь, что имя вкладки рабочей книги — Product Sales Excel.