Простой табличный отчет
Создадим простой табличный отчет для вывода информации о среднем рейтинге каждого студента по различным дисциплинам.
Запустим программу Report Builder и сразу же выберем режим создания отчета с помощью Мастера:
Выберем тип отчета – Табличный (Tabular), также укажем заголовок для отчета:
Укажем, что данные для построения отчета будут получены как результат SQL-запроса:
введем SQL-запрос:
SELECT STUDENT.NAME "STUDENT",
COURSE.NAME "COURSE",
AVG(MARK.RATING) "AVG. RATING"
FROM MARK, COURSE, STUDENT, GRP
WHERE (GRP.NAME='MP50')
AND (MARK.COURSEID=COURSE.COURSEID)
AND (MARK.STUDENTID=STUDENT.STUDENTID)
AND (STUDENT.GRPID=GRP.GRPID)
GROUP BY STUDENT.NAME, COURSE.NAME
Укажем, что в отчет следует включить все поля возвращаемые SQL запросом
Укажем, что в конец отчета следует включить строку, содержащую количество студентов вошедших в отчет:
Зададим название колонок отчета:
Выберем один из типовых вариантов разметки отчета:
На этом работа Мастера завершена, создан отчет следующего вида:
Через палитру свойств можно редактировать различные свойства отчета. Например, и выделив мышью строку заголовков можно указать, что эту строку следует выводить только на первой странице документа:
Переключимся в режим просмотра Модели данных, для этого выберем пункт меню View\DataModel или на панели инструментов окна редактирования отчетов выберем пиктограмму Модели данных (вторая с правого края):
Как видно в модель входит один SQL запрос (с именем Q_1), возвращающий три столбца STUDENT, COURSE, AVG_RATING. Дважды щелкнув на запросе Q_1 откроем его описание:
Количество студентов, вошедших в отчет, представляется в Модели данных отдельным элементом:
Отчет с группировкой данных
Создадим отчет для вывода информации о среднем рейтинге в каждой группе по различным дисциплинам, при этом будем группировать выводимые в отчете данные, чтобы избежать повторения одних и тех же строк.
Создадим новый отчет (меню File\New\Report) с помощью мастера, выбрав режим группировки по левому краю:
Введем SQL запрос для формирования отчета:
Укажем, значения в каких столбцах следует группировать. Зададим два уровня группировки – сначала по группам, затем по дисциплинам:
Укажем, какие поля включить в отчет:
Будем также (дополнительно) вычислять средний рейтинг по каждой группе:
Выберем один из стандартных вариантов разметки отчета:
В результате работы Мастера получим такой отчет:
Зададим маску формата выводимых значений, чтобы исключить слишком большого числа знаков после запятой:
Можно также задать цвет фона для различных полей отчета:
Матричный отчет
Матричный отчет позволяет разместить данные на странице документа в виде таблице, по строкам и столбцам которой будет располагаться некоторые категории, а в ячейках – некие величины, соответствующие этим категориям.
Данный отчет начнем создавать в “ручном” режиме:
Переключимся в режим редактирования Модели данных и добавим новый SQL запрос:
Запрос будет выдавать данные об оценках студентов по датам и различным курсам
Получим такую модель:
В контекстном меню выберем Report Wizard и добавим псевдонимы для столбцов запроса:
Укажем вид отчета – Матричный с группировкой:
Группировку будем выполнять по студентам:
По строкам матрицы расположим даты полученных оценок:
По столбцам расположим названия дисциплин
В ячейки матрицы поместим оценки (рейтинг):
Добавим расчет средних оценок:
Зададим имена для строк и столбцов:
Выберем типовой вариант форматирования:
В итоге получим, отчет следующего вида:
