Базы данных Microsoft Access 2003

         

На данный момент вы уже



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

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

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

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



Почему бы не распечатывать формы?

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

1. Запустите Access и загрузите базу данных Растения.

2. Воспользовавшись мастером Автоформа: ленточная, создайте форму Каталоги. Для этого выберите таблицу Каталоги в главном окне базы данных, выполните команду Вставка>Форма и дважды щелкните в диалоговом окне Новая форма на опции Автоформа: ленточная.

3. Выберите команду Файл>Предварительный просмотр. Появится новое окно предварительного просмотра, в котором демонстрируется внешний вид формы.

4. Перенесите указатель мыши в окно формы, расположите его так, чтобы указатель стал похожим на увеличительное стекло, и нажмите левую кнопку мыши. Форма будет увеличена (рис. 9.1).


Рис. 9.1. Распечатка формы Access

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

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


Создание простых отчетов


Для создания отчета Access не требуется прикладывать много труда. И, как всегда, задачу можно выполнить различными способами. В настоящем разделе описаны три способа создания отчетов в базе данных Access:
  •  с использованием мастера Автоотчеты;
  •  с помощью мастера отчетов;
  •  с применением режима конструктора.

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

Создание автоотчета


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

1. В окне Растения: база данных выберите ссылку Таблицы.

2. После этого откройте таблицу Каталоги.

3. В главном меню Access выберите команду Вставка>Автоотчет.

4. Выберите команду Файл>Сохранить и присвойте сохраняемому отчету имя АвтоКаталоги.

Вот и все! Теперь Access автоматически создаст и откроет отчет, показанный на рис. 9.2. Правда, на нем по-прежнему много свободного пространства, но зато теперь на странице отсутствуют назойливые графические элементы.

Режим предварительного просмотра Access дает возможность увидеть документ практически таким, каким он будет в напечатанном виде. Этот режим активно используется в данной главе, поскольку сделать «снимок экрана» результата печати не так-то просто!



Рис. 9.2. Автоотчет, основанный на таблице Каталоги

Как видите, каталоги в отчете отсортированы в том же порядке, что и в самой таблице — по полю Имя, первичному ключу таблицы. А что если для отчета потребуется другой порядок размещения записей? Отчет может быть основан на запросе, который, как было сказано в предыдущей главе, позволяет сортировать записи в любом порядке. Например, можно создать автоотчет, в котором каталоги будут отсортированы по их «специализации». Попробуем реализовать такую возможность.

1. В окне Растения: база данных выберите таблицу Каталоги.

2. Щелкните на стрелке раскрывающегося списка рядом с кнопкой Новый объект на панели инструментов Access и выберите опцию Запрос.

3. В окне Новый запрос выберите опцию Конструктор и щелкните на кнопке ОК.

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

5. Перетащите поле Специализация из списка полей на сетку конструктора. Выберите для строки Сортировка значение По возрастанию и снимите флажок Вывод на экран.

6. Выберите команду Файл>Сохранить и сохраните новый запрос под именем КаталогиПоСпециализации, после чего закройте окно конструктора.

7. В окне Растения: база данных выберите ссылку Запросы.

8. Выберите запрос КаталогиПоСпециализации.

9. Выполните команду Вставка>Отчет.

10. В окне Новый отчет задайте опцию Автоотчет: ленточный (рис. 9.3). Щелкните на кнопке ОК.


Рис. 9.3. Создание ленточного автоотчета с помощью запроса

11. Выполните команду Файл>Сохранить и присвойте отчету имя КаталогиПоСпециализации. Готовый отчет показан на рис. 9.4.

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

Мастер отчетов


Как следует из рис. 9.3, существует шесть способов создания отчета. Перечислим используемые при этом инструменты.
  •  Конструктор. Наиболее сложный способ. Режим конструктора описывается далее в этой главе, а также в главе 14, «Настройка отчетов».
  •  Мастер отчетов. Предоставляет удобный способ для создания отчетов на базе одной или нескольких таблиц. Этот способ рассматривается в следующем разделе.
  •  Автоотчет: в столбец. Позволяет создать отчет, в котором все поля размещены в одном столбце.
  •  Автоотчет: ленточный. Предназначен для создания отчета ленточного формата, в котором все поля размещены вдоль печатного листа.
  •  Мастер диаграмм. Создает отчет, содержащий диаграмму. Этот мастер описывается в главе 14.
  •  Почтовые наклейки. Позволяет создать отчет, который можно использовать для распечатки почтовых наклеек. Описание способа также приводится в главе 14.



Рис. 9.4. Автоотчет ленточного формата, основанный на запросе

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

В базе данных Access вполне могут содержаться два объекта с одинаковым именем, при условии, что они относятся к различным типам (например, отчет и запрос). Однако два запроса с одинаковым именем создать невозможно.


Использование мастера отчетов с таблицей


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

1. Выберите ссылку Отчеты в окне Растения: база данных.

2. Щелкните на кнопке Создать, расположенной на панели инструментов базы данных, чтобы открыть диалоговое окно Новый отчет.

3. Задайте в представленном списке опцию Мастер отчетов. Затем выберите в раскрывающемся списке, содержащем имена всех таблиц и запросов базы данных, таблицу Растения. Щелкните на кнопке ОК.

4. На первой панели Создание отчетов, показанной на рис. 9.5, выберите поля, которые необходимо отобразить в отчете. Например, это могут быть поля Имя, ЛатинскоеИмя и Фотография. Щелкните на кнопке Далее.


Рис. 9.5. Выбор полей в окне Создание отчетов

5. На второй панели мастера отчетов можно произвести настройку параметров для уровней группировки отчета. Принцип группировки описывается далее в этой главе. Пока что щелкните на кнопке Далее.

6. Третья панель позволяет сортировать отчет с учетом содержимого максимум четырех полей. В данном случае, как следует из рис. 9.6, задана сортировка по полю Имя. Щелкните на кнопке Далее.

7. На четвертой панели определяется вид макета для отчета. В данном случае выберите переключатели Табличный и Книжная, последний для указания ориентации печати документа. Какие параметры задаются на этой панели, показано на рис. 9.7. Обратите внимание, что изображение макета в левой области окна изменяется в соответствии с выбором тех или иных параметров. Завершив настройку, щелкните на кнопке Далее.


Рис. 9.6. Выбор порядка сортировки для нового отчета

8. Пятая панель дает возможность выбрать стиль отчета. Стили включают в себя различные шрифты и цвета. Выберите, например, стиль Обычный, обратив внимание на изменившийся макет отчета слева. Щелкните на кнопке Далее.

9. На последней панели отчету присваивается имя, а затем выбирается один из двух переключателей: Просмотреть отчет или Изменить макет отчета. Присвойте отчету имя Растения и щелкните на кнопке Готово для открытия этого отчета в режиме предварительного просмотра. На рис. 9.8 показан готовый отчет, увеличенный до размера рабочей области Access.


Рис. 9.7. Выбор параметров ориентации для отчета

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


Рис. 9.8. Новый отчет, созданный с помощью мастера

Использование мастера отчетов с запросом


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

1. В окне Растения: база данных выберите ссылку Отчеты.

2. Дважды щелкните на ссылке Создание отчета с помощью мастера.

3. На первой панели Создание отчетов выберите в раскрывающемся списке, содержащем имена таблиц и отчетов, запрос КаталогиПоСпециализации. Отметьте все поля запроса и щелкните на кнопке Далее. Для выбора сразу всех полей достаточно выполнить один щелчок на кнопке с изображением двух стрелок (>>).

4. На второй панели уровни группирования выбирать не нужно. Щелкните на кнопке Далее.

5. На третьей панели, показанной на рис. 9.9, задайте сортировку областей отчета по убыванию. Для изменения типа сортировки следующего поля достаточно один раз щелкнуть на кнопке, размещенной справа от поля. Щелкните на кнопке Далее.


Рис. 9.9. Задайте сортировку записей Область по убыванию

6. Установите переключатели Табличный и Книжная, затем щелкните на кнопке Далее.

7. На пятой панели Создание отчетов выберите стиль Сжатый. Щелкните на кнопке Далее.

8. Присвойте отчету имя КаталогиПоУбыванию Области и щелкните на кнопке Готово. Созданный отчет представлен на рис. 9.10.

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

Использование мастера отчетов для нескольких таблиц


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

1. В окне Растения: база данных выберите ссылку Отчеты.


Рис. 9.10. Отчет, основанный на запросе

2. Дважды щелкните на ссылке Создание отчета с помощью мастера.

3. В списке таблиц и запросов выберите таблицу Каталоги. Перенесите поля Имя, Город и Область из области Доступные поля в область Выбранные поля.

4. Теперь в списке таблиц и запросов выберите таблицу Растения. Как видите, поля в области Выбранные поля остались неизменными. Добавьте в область Выбранные поля поля Имя и ЛатинскоеИмя из таблицы Растения, после чего щелкните на кнопке Далее.

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


Рис. 9.11. Группирование отчета на основе нескольких таблиц

6. Если других уровней группирования задавать не требуется, щелкните на кнопке Далее.

7. Укажите порядок сортировки по имени и щелкните на кнопке Далее.

8. Активизируйте переключатель Структура 1, щелкните на кнопке Далее.

9. Выберите стиль Спокойный и щелкните на кнопке Далее.

10. Присвойте новому отчету имя КаталогиИРастения, затем откройте его в режиме предварительного просмотра. Результат, который вы должны получить, показан на рис. 9.12.


Рис. 9.12. Отчет по каталогам и растениям

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

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

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

Режим конструктора


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

На рис. 9.13 показан отчет, открытый в режиме конструктора. Как видите, на экране присутствует немало окон и инструментов.

Для работы с отчетом в конструкторе предусмотрено четыре основных окна.


Рис. 9.13. Отчет, открытый в режиме конструктора
  •  Окно Панель элементов. Дает возможность добавить в отчет новые элементы управления. Эти элементы представляют собой контейнеры, в которых хранятся данные отчета.
  •  Окно Список полей. Содержит списки всех полей данных (выбираются в таблице или запросе), предназначенных для использования в отчете.
  •  Окно Сортировка и группировка. Дает возможность определять параметры сортировки и группировки данных.
  •  Окно Свойства. Позволяет изменять внешний вид и предназначение элементов управления отчета, а также содержимое отчета.

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

Хотя с помощью мастера отчетов можно создавать неплохие отчеты, иногда его возможностей бывает недостаточно. Примером тому может служить отчет Растения, созданный ранее в этой главе. Он не позволяет корректно выводить изображения растений. Далее показано, как эту проблему можно решить с помощью конструктора.

1. В окне Растения: база данных выберите раздел Отчеты.

2. Выберите отчет Растения.

3. На панели инструментов щелкните на кнопке Конструктор.

4. После того как отчет будет открыт в режиме конструктора, воспользовавшись панелью инструментов или меню Вид, уберите с экрана окна Панель элементов, Сортировка и группировка, а также Список полей (возможно, некоторые из этих окон уже там отсутствуют). Убедитесь, что окно Свойство отображается на экране; в противном случае выберите в меню Access команду Вид>Свойства (или щелкните на кнопке Свойства, расположенной на панели инструментов конструктора; также можно нажать комбинацию клавиш <Alt+Enter>).

5. Щелкните на кнопке раскрывающегося списка в верхней области окна Свойства. В списке будут представлены все элементы управления отчета. Прокрутите список и выберите элемент Фотография. В результате будет выделен и соответствующий элемент управления отчета в главном окне конструктора (рис. 9.14).


Рис. 9.14. Выбор элемента управления отчета в режиме конструктора

6. После выбора элемента Фотография в окне Свойства будут отображены параметры, определяющие внешний вид и прочие свойства данного элемента. Например, свойство Данные указывает на то, что информация, отображаемая в заданном элементе управления, получена из поля Фотография таблицы или запроса. Щелкните на элементе управления Установка размеров, содержащем значение Фрагмент, и измените его на Вписать в рамку, выбрав это значение в раскрывающемся списке.

7. Щелкните на кнопке Сохранить, расположенной на панели инструментов.


Рис. 9.15. Измененный дизайн отчета Растения

8. Выберите команду Вид>Предварительный просмотр; теперь фотография в отчете будет размещена должным образом, как показано на рис. 9.15.

Причина, по которой изображение так выглядело в первом отчете, состоит в том, что в базе данных хранятся изображения различных размеров, причем некоторые из них гораздо больше других. Когда Мастер отчетов создавал первый отчет, элемент управления был достаточно большим, чтобы вместить изображение любого размера. Затем свойству Установка размеров было присвоено значение Фрагмент, при котором отображается истинный размер изображения. Следовательно, изображение большого размера заполнило бы все пространство выделенного для него элемента управления, а маленькому изображению пришлось бы «ютиться» в углу, посреди моря белого пространства.

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

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

Более подробно работа с отчетами в режиме конструктора описывается в главе 14, «Настройка отчетов».
Содержание
Содержание раздела