Практическая работа №7 Создание однотабличного отчета в режиме конструктора
Цель работы: научить студентов создавать отчет для одной таблицы в режиме конструктора, группировать и сортировать данные отчета, размещать данные в разделах отчета, оформлять отчет, просматривать отчет и отправлять его на печать.
Студент должен:
уметь:
проектировать реляционную базу данных;
использовать язык запросов для программного извлечения сведений из баз данных;
знать:
основы теории баз данных; модели данных;
особенности реляционной модели и проектирование баз данных, изобразительные средства, используемые в ER-моделировании;
основы реляционной алгебры;
принципы проектирования баз данных, обеспечение непротиворечивости и целостности данных;
Теоретическая часть
Создание отчета для одной таблицы
Рассмотрим технологию создания однотабличного отчета на примере получения списков студентов по группам. Пусть в результате проектирования макета отчета списки СТУДЕНТОВ определены перечисленные ниже требования к отчету.
Вид макета формируемого отчета должен соответствовать приведенному на рис. 1. На макете показано оформление списка студентов для одной группы. В отчете должны последовательно, со своими заголовками, отображаться списки студентов для каждой группы. Вывод записей списка группы должен осуществляться в порядке возрастания номера студента в группе.
При формировании отчета необходимо рассчитать средний проходной балл для каждой группы и отобразить его в отчете
Вывод названия отчета должен производиться на каждой странице отчета
Рис. 1. Проект макета для создания однотабличного отчета со списками студентов по группам
Практическая часть
Создание однотабличного отчета в режиме конструктора
Выберите в окне базы данных объект Отчеты (Repoгts). Начать конструирование отчета можно разными способами. Можно сразу перейти в режим конструирования, выбрав в окне базы данных строку Создание отчета в режиме конструктора (Create гepoгt in Design view). В этом случае сразу открывается не связанный с источником отчет.
Можно начать конструирование, нажав кнопкуСоздать (New). В открывающемся диалоговом окне (рис. 2) Новый отчет (New Repoгt), позволяющем выбирать разные режимы, в данном случае необходимо выбрать вариант Конструктор (Design). Если в этом окне в качестве источника данных отчета выбрать таблицу (запрос), то одновременно с открытием нового отчета в режиме конструктора откроется дополнительное окно со списком полей источника.
Рис. 2. Окно выбора варианта создания отчета, таблицы-источника и окно доступных полей
Выберем в качестве источника для рассматриваемого примера та6лицу СТУДЕНТ. Появится окно со списком доступных полей источника отчета (рис. 2).
В открывшемся окне конструктора отображается макет создаваемого отчета. Если раздел Заголовок отчета (Report Header) отсутствует, включим его с помощью команды меню Вид | Заголовок / примечание отчета (View I Report Header /Footer) или соответствующей кнопки панели инструментов конструктора отчетов. Для удобства работы можно на панели конструктора добавить кнопку заголовок | примечание отчета (Report Header l Footer), при использовании которой добавляются соответствующие разделы. Группировка и сортировка данных отчета
Для выполнения требований к группировке и сортировке отображаемых в отчете данных можно использовать кнопку Сортировка и группировка (Sоrtiпg апd Grouping) на панели инструментов конструктора. Далее задаются необходимые параметры в открывающемся диалоговом окне Сортировка и группировка (Sorting апd Grouping). Для рассматриваемого примера в этом окне необходимо задать группировку записей по полю нг и сортировку по полю нс (рис. 3).
Рис. З. Окно определения групп записей по полю НГ и сортировки по полю НС Группировка по полю
В окне Сортировка и группировка (Sorting and Grouping) в столбце Поле/выражение (Field/Competition) необходимо записать имя поля для группировки или выбрать это поле из раскрывающегося списка полей источника. В области Свойcтвa группы (Group Properties) в строках Заголовок группы (Group Header) и Примечание группы (GroupFooter) следует выбратьзначение Да (Yes).
Поскольку общий список студентов в соответствии с проектом отчета должен быть разбит по группам, выберем для группировки поле НГ рассматриваемого примера.
После определения группировки в окне конструктора отчета (рис. 4) появляются дополнительные разделы Заголовок группы НГ(НГ Header), Примечание группы НГ (НГ Footer). Сортировка по полю
Для задания сортировки в следующей строке диалогового окна достаточно записать (выбрать) имясоответствующего поля. В области Свойства группы этого поля в строках Заголовок группы НР(НГ Healler) и Примечание группы НГ (НГ Footer) по умолчанию установлены значения Нет (No), что и устанавливает по этому полю только сортировку.
В рассматриваемом при мере для вывода отсортированного списка студентов в каждой группе зададим сортировку по полю номера студента НС. Для этого в диалоговом окне выберем во второй строке поле НС.
Рис. 4. Окно конструктора отчетов при разработке отчета для вывода данных из одной таблицы СТУДЕНТ Размещение данных в разделах отчета
Данные в отчете должны быть размещены в соответствии с проектом макета отчета. Для рассматриваемого примера проект отчета приведен выше (см. рис. 1). Размещение полей из таблиц
Процедура размещения полей из таблиц включает два этапа.
1. Размещение поля группировки.
Значение поля группировки должно быть представлено один раз в области заголовка группы. В примере отчета поле НГ должно быть размещено в разделе Заголовок группы 'НГ' (НГ Header). Если список полей источника не открыт, нажмем кнопку панели инструментов конструктора отчетов Список полей (Field List) Перетащим с помощью мыши поле НГ из списка полей в раздел Заголовок группы. Откорректируем подпись поля, изменив ее на Список студентов группы. Установим нужный шрифт для элементов. Для установки размеров рамки по размеру текста подписи выполним команду Формат | Размер | По размеру данных (Forrnat | Size | Size То Fit) или нажмем соответствующую кнопку панели инструментов.
2. Формирование табличной части отчета.
В соответствии с проектом макета необходимо разместить поля для табличной части так, чтобы их имена располагались в области данных, а подписи полей для формирования заголовка столбца - в области Заголовок группы (Group Header). Тогда в области данных после формирования отчета будут размещены строки табличной части, а в области заголовка - названия столбцов. При этом следует иметь в виду, что после перетаскивания полей из списка источника в область данных они поместятся туда вместе с подписями. Для
перемещения подписей в область Заголовок группы их можно вырезать и, сделав текущей область заголовка, , вставить. Заметим, что подписи также можно создать заново, Воспользовавшись кнопкой панели элементов Надпись (Label).
В примере формируемого отчета последовательно разместим поля НС, ФИО, ДАТАР, ПБАЛЛ в области данных. Поле размещается вместе с подписью, которую система берет из свойств полей таблицы СТУДЕНТ. Подписи полей следует переместить в область Заголовок группы путем вырезания и вставки. Если они не совпадают с названиями столбцов в проекте макета, их необходимо откорректировать. Включение вычисляемого поля для расчета итоговых значений
Для создания вычисляемого поля с итоговым значением по группе записей разместим его в раздел Примечание группы 'НГ' (НГ Footer) (см. рис. 4). Для включения расчетного реквизита используется кнопка Поле (Техt Вох) на панели элементов, которая позволит сформировать элемент Свободный (Unbound).
Далее нужно открыть свойства создаваемого элемента и на вкладке Данные (Data) ввести в строку Данные (Control Source) необходимое выражение для выполнения групповой операции (суммирование, расчет среднего арифметического и т. п.). При необходимости, следует выбрать в раскрывающемся списке Число десятичных знаков(DecimaIPlaces) нужную точность расчета. На вкладке Макет (Format) в раскрывающемся списке Формат поля(Format) выбирается требуемый формат.
В примере формируемого отчета для формирования расчетного реквизита Средний проходной балл группы нажмем кнопку Поле (Техt Вох) и разместим элемент Свободный (Unbound) в раздел Примечание группы 'НГ' (НГ Footer) (см. рис. 4).
Откроем окно свойств элемента Свободный (Unbound). Запишем на вкладке Данные (Data) в строку Данные (Control Source) функцию = Avg ( [ПБАЛЛ] ) для расчета среднего арифметического значений поля ПБAЛЛ по записям студентов одной группы.для записи функции можно воспользоваться построителем выражений, вызвав его в окне свойств поля (рис. 5) кнопкой, расположенной справа от строки Данные (Control Source).
Рис. 5. Окно свойств поля для вычисления В окне построителя (рис. 6) для формирования функции откроем папку Функции, выберем в ней папку Встроенныефункции. Затем в средней панели выберем из списка значение Статистические. В правой панели выберем нужную функцию Avg.
Рис. 6. Окно построителя выражений В окне свойств поля на вкладке Макет (Format) в строке Число десятичных знаков (DecimaIPlaces) запишем значение 2. В раскрывающемся списке Формат поля (Format) выберем значение Фиксированный (Fixed).
Отредактируем подпись вычисляемого поля. Для этого выделим подпись и вызовем окно свойств. В окне свойств на вкладке Макет (Format) в строке Подпись (Caption) запишем - средний проходной балл группы. Такие действия, как изменение подписи или ввод выражения в поле можно выполнить и не обращаясь к свойствам элементов непосредственно внутри рамки элемента. Добавление текущей даты и номера страницы
Для добавления в отчет текущей даты можно использовать встроенную функцию Now из категории Дата/время (Date/time). Сначала в области Заголовок отчета (Report Header) с помощью кнопки Поле (Техt Вох) создается свободный элемент. В окне его свойств на вкладке Данные (Data) в строке Данные (Control Source) нужно записать значение =NOW(). Функцию Now можно выбрать в построителе, отметив из встроенных функций категориюДата/время. На вкладке Макет (Format) в раскрывающемся списке Формат поля (Format) выбирается значение Длинный формат даты (General Date). Подпись этого поля можно удалить.
Для добавления номера страницы в области нижнего колонтитула создается поле как свободный элемент. В окне его свойств на вкладке Данные (Data) в строку Данные (Control Source) записывается выражение =[Раgе]. Подпись этого поля можно отредактировать, записав в его свойствах на вкладке Макет (Format) в строке Подпись (Caption) - Ор.
Рассмотренный вариант добавления текущей даты и номера страниц показан на примере отчета, приведенного на рис. 4.
Существуют и другие способы формирования поля даты и номера страницы. Добавить в отчет поле текущей даты и времени можно, выполнив в режиме конструктора командуВставка | Датаивремя(Insert | Date апd Time). Установка в диалоговом окне Дата и время (Date апd Time) флажков Формат даты (Include Date) и/или Формат времени (Include Time) позволяет вставить текущую дату и/или текущее время и выбрать нужный вариант форматов (рис. 7). В случае отсутствия раздела заголовка поле текущих даты и времени вносится в разделданных.
В результате в отчете будет создано поле, в окне свойств которого на вкладке Данные (Data) в строке Данные (Control Source) будет записано выражение = Date ( ). Если в отчете имеется раздел заголовка, поле добавляется в этот раздел.
Добавить в отчет поле нумерации страниц можно в режиме конструктора с помощью команды Вставка | Номера страниц (Insert | Page Number). В диалоговом окне Номера страниц (Page Numbегs) выбираются параметры, определяющие формат, расположение и выравнивание номеров страниц (рис. 8). Для печати номера страницы на первой странице устанавливается флажокОтображать номер на первой странице (Show Number оп First Раge.).
Вывод номеров страниц можно задать, формируя соответствующее выражение в окне свойств поля на вкладке Данные (Data) в строке Данные (Сопtrol Source). Такое выражение можно получить в построителе, открыв там папку Общие выражения и далее - категорию Номер страницы (Page N). При этом построитель предлагает выражение ="Cтраница"&(Page). Если выбрать категорию Страница N из М (Page N of М), построитель предлагает выражение ="Страница " & [Page] & " из " & [pages]. Завершение оформления отчета
Для окончательного оформления необходимо ввести в раздел Заголовок отчета (Report Header) название отчета. Для этого используется кнопка панели элементов Надпись (Label). Далее с помощью кнопок панели форматирования устанавливается нужный шрифт надписи. Для вывода названия отчета на последующих страницах оно вводится также в раздел Верхний колонтитул (Page Header). Для этого можно скопировать название из раздела Заголовок отчета (Report Header), вставить в раздел Верхний колонтитул (Page Header) и выбрать нужный шрифт. Затем следует в окне свойств отчета на вкладке Макет (Format) в раскрывающемся списке Верхний колонтитул (Page Header) выбрать значениеБез заголовка. Окно свойств отчета может быть вызвано при установке курсора на квадрате пересечения линеек.
В примере формируемого отчета (см. рис. 4) заголовок списки СТУДЕНТОВ введен и отредактирован в область заголовка отчета и область Колонтитула. В соответствии с проектом отчета созданы линии, при использовании кнопки панели элементов Линия (Line).
Рис. 7. Окно выбора формата даты и/или времени
Рис. 8. Окно выбора параметров номеров страниц Просмотр и печать отчета
Просмотр отчета
Переход из режима конструктора отчетов в режим предварительного просмотра осуществляется с помощью кнопки Вид (View) на панели конструктора. Для просмотра ранее созданного отчета выберите в окне базы данных на вкладке Отчеты (Reports) нужный отчет и нажмите кнопку Просмотр (Preview). Вид отчета при просмотре аналогичен его виду при печати
В режиме предварительного просмотра имеется своя панель инструментов. Список кнопок приведен на рис. 9.
Для просмотра нужных страниц отчета можно использовать стандартное поле номера страницы в нижнем левом углу окна отчета.
Рис. 9. Панель инструментов предварительного просмотра отчета Печать отчета
Кнопка Печать (Print) панели инструментов режима предварительного просмотра (см. рис. 9) позволяет вывести данный отчет на печать. С помощью команды Файл | Параметры страницы (File | Page Setup) можно выбрать принтер, задать формат бумаги, размер полей, расстояние между строками, ориентацию (книжная, альбомная) и т. д. Команда Файл | Печать (File | Print) позволяет выбрать для печати отдельные страницы отчета, распечатать заданное число копий, вывести отчет в файл, который должен распечатываться в другое время.
Рис. 10. Первая страница отчета Списки студентов с данными из таблицы СТУДЕНТ в режиме предварительного просмотра На рис. 10 приведена первая страница примера отчета Списки студентов в режиме предварительного просмотра.
Контрольные вопросы
Что такое отчет?
Как создать отчет?
Для чего используется сортировка и группировка данных?
Что включает в себя окно конструктора отчетов?
Какие этапы включает процедура размещения полей из таблиц?
Что такое вычисляемое поле?
Как добавить вычисляемое поле?
Как добавитьтекущую дату и номер страницы?
Как просмотреть отчет?
Как распечатать отчет?
|