access_2010_в_примерах (833831), страница 13
Текст из файла (страница 13)
Далее надо указать в свойствах отчета на вкладке Макет (Format)в строке Верхний колонтитул (Page Header):”Без заголовка” (Not with RptHdr). Свойства отчета могут быть вызваны при установке курсора на пересечении линеек.Создадим линии в соответствии с макетом, воспользовавшись кнопкой панелиэлементов Линия (Line).Просмотр и печать отчетаПереход из режима конструкторов в режим предварительного просмотра осуществим, нажав кнопку Предварительный просмотр (Report View)103(см.рис.6.2).
Для просмотра ранее созданного отчета нужно выбрать его в окнебазы данных на вкладке Отчеты (Reports) и нажать кнопку Просмотр(Preview). Отчет при просмотре отобразится на экране таким, каким он будетнапечатан. В режиме предварительного просмотра имеется своя панель инструментов (рис.8.7).Рис.8.7. Панель инструментов предварительного просмотра отчетаДля просмотра нужных страниц отчета можно использовать стандартное поленомера страницы В нижнем левом углу окна отчета.Кнопка Печать (Print) панели инструментов режима предварительного просмотра позволяет вывести отчет на печать.Рис.8.8.
Первая страница отчета Списки студентов с данными из таблиц СТУДЕНТ в режиме предварительного просмотра.104С помощью команды Файл|Параметры страниц (File|Page Setup…) можновыбрать принтер, задать формат бумаги, размер полей, расстояние междустроками, ориентацию (книжная, альбомная) и т.д. Команда Файл|Печать(File|Print…) позволяет выбрать для печати отдельные страницы отчета иливыделенные записи, распечатать заданное число копий, вывести отчет в файл,который должен распечатываться в другое время. На рис.8.8 приведена перваястраница разработанного отчета Списки студентов в режиме предварительного просмотра.105Урок 9. Отчеты по двум таблицамНаряду с однотабличными отчетами Ассеss позволяет создавать более сложные отчеты, обеспечивающие вывод данных из нескольких взаимосвязанныхданных в многотабличный отчет автоматически используются связи, установленные в схеме данных БД.Многотабличные отчеты могут содержать основную часть и включаемуючасть, т.е.
подчиненный. Для каждой из этих частей в качестве источника данных выбирается своя таблица или несколько таблиц и при этом не иметь подчиненных отчетов.Рассмотрим далее построение отчета для двух таблиц, находящихся в одномногозначных отношениях. В этих отношениях одна таблица является главной, а другая – подчиненной.Построение такого отчета имеет свои особенности в зависимости от выбораглавной или подчиненной таблицы в качестве подчиненного отчета.Многотабличный отчет с основной частью на базе главной таблицыРассмотрим технологию создания многотабличного отчета на основе таблицКАФЕДРА и ПРЕПОДАВАТЕЛЬ.
Пусть необходимо подготовить отчет, содержащий сведения о кафедрах и включающий списки преподавателей по кафедрам.Проект макета отчета.Предположим, что макет для отчета со списками преподавателей по кафедрамдолжен иметь вид, показанный на рис. 9.1. В соответствии с проектом макетав отчет предполагается выводить данные по каждой кафедре, включая название, код и телефон, а также фамилию и фотография заведующего.
Эти данныесодержатся в таблице КАФЕДРА.В табличной части по каждой кафедре необходимо вывести данные о преподавателях кафедре, которые содержатся в таблице ПРЕПОДАВАТЕЛЬ.Проект макета дает основание выбрать в качестве основной таблицы отчетатаблицу КАФЕДРА, а таблицу ПРЕПОДАВАТЕЛЬ – в качестве источникаданных для подчиненного отчета со списком преподавателей.106Рис. 9.1. Макет для отчета со списками преподавателей по кафедрамСоздание основной части отчетаВ окне базы данных Все объекты Access выберем таблицу КАФЕДРА, которая будет источником данных для основной части отчета. Далее выберемвкладку Создание и нажмем на кнопку Отчет.
Щелкаем правой кнопкой мыши по появившемуся отчету КАФЕДРА и выбираем Конструктор для построения отчета в режиме конструктора. В область данных перетащим полятаблицы КАФЕДРА: НКАФ, ККАФ, ТЕЛ, ЗАВ и ФОТО из верхнего колонтитула. Разместим поля и подписи, отредактируем их в соответствии с проектоммакета на рис. 9.1. Сохраним отчет под именем «Кафедры» (см. рис. 9.2).Рис. 9.2.
Заполнение основной части отчета о кафедрах в режиме конструктора107Разработка подчиненного отчетаДля вывода в отчет Кафедры списка преподавателей из таблицы ПРЕПОДАВАТЕЛЬ подготовим отдельный отчет, который будет включен в основнуючасть отчета в качестве подчиненного.Создание автоотчетаПодчиненный отчет создается как обычный однотабличный отчет. Для автоматического создания отчета во вкладке Создание/Отчет выберем опциюМастер отчетов. В качестве источника данных этого отчета выберем таблицуПРЕПОДАВАТЕЛЬ. Создание автоотчета завершается выводом на экран отчета, в котором в качестве заголовка фигурирует имя таблицы (рис.
9.3). В отчет включены все поля таблицы, а заголовками столбцов являются подписиэтих полей, заданные в свойствах таблицы.Доработка подчиненного отчета в режиме конструктораДля того чтобы подчиненный отчет можно было включить в основную частьотчета в нужном виде в соответствии с проектом макета, доработаем его в режиме конструктора.Верхний колонтитул, в котором после работы мастера оказались размещенными записи полей, и нижний колонктитул, где размещаются дата и номерстраницы, не отобразятся при встраивании отчета как подчиненного.
Для отображения в полном отчете заголовков столбцов табличной части перенесемназвание столбцов из верхнего колонтитула в заголовок подчиненного отчета.Рис. 9.3. Отчет, созданный в режиме Автоотчет: ленточный108Для этого расширим раздел заголовка отчета, выделим все подписи полей вверхнем колонтитуле и перетащим их. Поскольку отчет будет использоватьсятолько как подчиненный, можно удалить оба колонтитула. Для этого нажмемправой кнопкой мыши на Верхний или Нижний Колонтитул и выберем Колонтитулы страницы. После этого в открывшемся окне нажимаем ДА. Послеэтого оба колонтитула удалятся.Удалим элемент поля ККАФ и его надпись «Код кафедры», т.к. в подчиненном отчете значения этого поля будут повторяться во всех строках о преподавателях, а однократное отображение кода кафедры предусмотрено в основнойчасти отчета.Окончательно сконструированный подчиненный отчет приведен на рис. 9.4.Сохраним подчиненный отчет под именем «Преподаватели».Рис.
9.4. Подчиненный отчет для включения в отчет КафедрыВключение подчиненного отчетаВоспользуемся самым простым способом включения подчиненного отчета восновной.Разместим на экране окно базы данных рядом с окном отчета Кафедры в режиме конструктора, который представлен выше на рис. 9.1.Перейдем в окно базы данных. Выберем из перечня имен отчетов подчиненный отчет Преподаватели и перетащим его в область данных отчета Кафедры.Удалим элемент надписи подчиненного отчета, выделив его и нажав <Del>.Отчет Кафедры после внедрения подчиненного отчета показан на рис. 9.5.109Рис.
9.5. Отчет на основе таблиц КАФЕДРА и РЕПОДАВАТЕЛЬ в режиме конструктора со встроенным подчиненным отчетомНа рис. 9.5 подчиненный отчет отображен внутри отчета Кафедры, где доступен для редактирования, как и основной отчет. Для того чтобы подчиненный отчет при отображении не был взят в рамку, выделим его, как видно наэтом рисунке, откроем его свойства и на вкладке Макет в строке Тип границы выберем значение Отсутствует.Просмотрим содержимое отчета Кафедры(см.
рис. 9.6.), нажав на него 2 раза левой кнопкой мыши, и убедимся, что еговид соответствует проекту макета отчета на рис. 9.1.Рис. 9.6. Первая страница многотабличного отчета110Сортировка записей. Для вывода записей отчета в нужном порядке задаетсякритерий сортировки. Для этого в режиме конструктора надо нажать кнопкуИтоги. При необходимости сортировки и группировки записей подчиненногоотчета необходимо выполнить для него такие же действия.111Урок 10. Многотабличные отчетыРассмотрим технологию разработки отчета, основным источником которогоявляется подчиненная таблица, когда данные главных таблиц относительноэтого источника тоже включаются в ответ.
Мастер отчетов позволяет построить многотабличный отчет для взаимосвязанных таблиц, выбрать из них нужные поля в заданной последовательности и указать, какая таблица из участвующих в отчете, будет записеобразующей, т.е. основным источником данных. Кроме того, мастер предоставляет возможность определить группировкуи сортировку записей отчета по различным полям, подсчитать итоговые значения.Пусть необходимо получить отчет, в котором выводятся в виде списка данныео занятиях, проводимых в каждой группе. Строки отчета должны быть упорядочены по коду предмета. При выводе данных в отчете должны также формироваться расчетные суммарные часы по занятиям для каждой группы.Проект макета отчета, который должен быть создан для вывода данных о занятиях, проводимых в каждой группе, приведен на рис.
10.1.Рис. 10.1. Проект макета отчета о занятиях, проводимых в группахВыбор таблиц для отчета и варианта его создания.Основные сведения о занятиях, проводимых в группах, содержит подчиненнаятаблица ИЗУЧЕНИЕ. Из таблицы ИЗУЧЕНИЕ можно получить перечень112идентификаторов занятий, проводимых в каждой группе, с указанием часов позанятию. Эта таблица является основным источником записей для создаваемого отчета. Наименования предметов содержит таблица ПРЕДМЕТ, а фамилии преподавателей – таблица ПРЕПОДАВАТЕЛЬ.
Обе эти таблицы являютсяглавными по отношению к таблице ИЗУЧЕНИЕ. Одно-многозначные связимежду этими таблицами и подчиненной таблицей ИЗУЧЕНИЕ установлены всхеме данных базы по соответствующим идентификаторам занятия: кодупредмета и табельному номеру преподавателя.Начиная создание отчета во вкладке Создание, выберем Мастер отчетов.В окне Создание отчетов (см. рис.
10.2.) выберем из таблицы ИЗУЧЕНИЕполя, включаемые в отчет: НГ, ВИДЗ, ЧАСЫ.Рис. 10.2. Окно для формирования пользователем списка полей, включаемых в отчетИз таблицы ПРЕДМЕТ выберем поле с наименованием предмета НП, а изтаблицы ПРЕПОДАВАТЕЛЬ поле ФИО.Замечание. Для того чтобы включать поля в нужной последовательности,следует иметь в виду, что поле вставляется в след за выделенным в списке полей уже включенных в ответ. Например, для включения поля НП сразу за полем НГ последнее должно быть предварительно выделено.На рис.
10.2. представлено окно Создание отчета после выбора всех полей,используемых в отчете.В следующем сеансе окна мастера в строке Выберите тип представленияданных. Далее задаются уровни группировки, которые позволяют вывести113записи, объединенные по разным полям. Зададим один уровень группировкипо полю НГ. При этом в окне отображается общая структура формируемогомакета отчета.В следующем сеансе диалогового окна мастера Создание отчета задается порядок сортировки записей (рис. 10.3).Рис. 10.3. Окно мастера отчетов при выборе порядкасортировки строкМастер позволяет производить сортировку по четырем полям в порядке возрастания или убывания значений поля. Выберем поле НП (Название предмета), по которому нужно произвести сортировку по возрастанию.
Чтобы произвести подсчет итоговых значений, нажмем кнопку Итоги. Для числовых полей в открывшемся окне Итоги будут выведены строки, в которых можновыбрать статистическую функцию (Sum, Avg, Min, Max) для подсчета значений в итоговой строке группы. В соответствии с проектом макета отчета (см.рис.