Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Диго С.М. Базы данных проектирование и использование.doc
Скачиваний:
723
Добавлен:
14.05.2016
Размер:
12.04 Mб
Скачать

9.2.4. Создание отчета, базирующегося на нескольких таблицах

В нашем примере в качестве источника для отчета использовалась одна таблица. Часто требуется ввести в отчет данные из нескольких таблиц. Даже в нашем примере желательно выводить в отчете не код кафедры, а ее наименование. Сделать это можно несколькими спосо­бами. Во-первых, можно выбрать несколько источников на том шаге создания отчета, на котором выбираются поля в отчет (см. рис. 9.6). Таблицы следует выбирать в порядке их соподчиненности (т.е. по .цепочке 1:М). В нашем случае сначала нужно выбрать таблицу «Ка­федра» (рис. 9.29), выбрать поля из этого источника и далее, не пере­ходя к следующему шагу, выбрать таблицу «Сотрудник» и ее поля. В этом случае группировка по кафедре будет создана автоматически. На последующих шагах проектирования отчета можно как отказать­ся от этого уровня группировки, так и создать новые уровни.

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

9.2.5. Создание сложных отчетов

В категорию «сложных» в Access отнесены отчеты, включающие в своем составе подчиненные отчеты, перекрестные отчеты и отче­ты, печатающиеся в несколько колонок.

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

Свободный главный отчет может служить контейнером несколь­ких, не связанных между собой отчетов, которые требуется объеди­нить. Например, вы создаете отчет о продажах за определенный пе­риод и хотите включить в него разделы, содержащие данные, сгруп­пированные по разным признакам: по территориальному, по продуктам, по сотрудникам. Эти разделы будут самостоятельными, не соподчиненными.

Главный отчет связывают с таблицей, запросом или инструкцией SQL в тех случаях, когда в него требуется вставить подчиненные от­четы, в которых выводятся данные, связанные с данными в главном отчете. Например, в главном отчете могут быть выведены записи о каждом сотруднике, а в подчиненном - данные о детях каждого со­трудника. В главный отчет наряду с подчиненными отчетами могут включаться также подчиненные формы, причем число таких подчи­ненных форм не ограничивается. Более того, главный отчет может содержать подчиненные формы или отчеты двух уровней вложенно­сти. Например, в отчете может содержаться подчиненный отчет, ко­торый в свою очередь содержит подчиненную форму или подчинен­ный отчет.

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

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

Создать отчет, включающий подчиненные, можно, выполнив оп­ределенную последовательность действий.

  1. Откройте отчет, который должен быть главным отчетом, в ре­жиме Конструктор.

  2. Убедитесь, что кнопка Мастера на панели элементов нажата.

  3. Щелкните по кнопке Подчиненная форма/отчет на панели элементов.

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

  5. Выполняйте инструкции, выводящиеся в диалоговых окнах Мастера.

После нажатия кнопки Готово элемент управления «Подчинен­ная форма/отчет» будет вставлен в главный отчет. Кроме того, будет создан отдельный отчет, выводящийся как подчиненный отчет.

Создать отчет, включающий подчиненные, можно и другим спо­собом, а именно: после открытия отчета, который должен быть глав­ным отчетом, в режиме Конструктор нажмите клавишу [F11] для пе­рехода в окно базы данных и переместите с помощью мыши отчет или таблицу из окна базы данных в тот раздел главного отчета, в ко­торый требуется поместить подчиненный отчет.