Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект лекций СУБД(рус) .doc
Скачиваний:
48
Добавлен:
09.02.2016
Размер:
19.17 Mб
Скачать

1.11. Многотабличная форма, созданная Мастером на основе четырех таблиц

1.8. Создание и редактирование отчетов

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

- отчеты предоставляют широкие возможности для группировки и вычисления промежуточных и общих итогов для больших наборов данных;

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

В отчете каждая группа данных и итоги по ней могут быть представлены отдельно.

При этом имеются следующие возможности:

- для иерархического представления данных можно определить до 10 условий группировки;

- для каждой из групп можно задать отдельные заголовки и примечания;

- можно проводить сложные вычисления не только внутри групп, но и по нескольким группам одновременно.

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

1.12. Окно диалога Новый отчет

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

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

Для создания отчета нужно выполнить следующие действия:

- задать заголовок отчета в разделе Заголовок отчета;

- разместить свободную надпись в разделе верхнего колонтитула, ввести информацию, задать размер и шрифт;

-перетащить поле из списка полей для заголовка и здесь же разместить надписи с названиями столбцов;

- разместить поля под соответствующими заголовками столбцов и выровнять их;

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

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

Мастер отчетов- запускает основного мастера по разработке отчетов, позволяющего выбрать поля для отчета, задать форматы, условия группировки, итоговые функции.

Автоотчет: в столбец- создается отчет, в котором каждая запись базового запроса или таблицы представлена в виде простого списка, содержащего названия и значение полей.

Автоотчет: ленточный- в отчете этого типа записи базового запроса или таблицы выводятся в одной строке.

Диаграмма- этот мастер помогает построить диаграмму и создает в отчете свободную рамку объектаOLEс внедренной диаграммойMicrosoftGraph.

Почтовые наклейки- этот мастер позволяет выбрать поля с именами и адресами, отформатировать их и создать отчет для печати почтовых наклеек.

Рис. 1.13. Окно нового отчета в режиме конструктора

После выбора в окне (рис.1.12) пункта Мастер отчетовпоследовательность действий такая:

- выбрать таблицу или запрос в качестве источника данных;

- выбрать поля для отчета, переслав их с окна Доступные поляв окно Выбранные поля;

- подтвердить предложенные мастером условия группировки;

- выбрать дополнительные поля для группировки записей;

- задать дополнительные условия для сортировки строк в области данных отчета;

- нажать кнопку Итоги, если нужно вывести итоговые значения для некоторых полей;

- выбрать вид макета отчета и ориентацию печатной страницы;

- выбрать один из шести встроенных стилей оформления отчета: черно-белый, простой, строгий и др;

- задать имя отчета, которое мастер использует для создания надписи в заголовке отчета и Готово.

Разработку многотабличного отчета проводят точно также, но на основе базового запроса, составленного из нескольких таблиц. Кроме того, можно обойтись и без запроса и такой отчет разработать Мастеромнепосредственно на основе нескольких таблиц.

Использование вычисляемых полей

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

Добавление текущей даты. Один из видов информации, которую наиболее часто включают в отчет, является дата подготовки отчета. Для этогоAccessпредоставляет встроенную функциюNow(),которая возвращает текущую системную дату и время. Чтобы добавить текущую дату в отчет, нужно создать свободное поле в верхнем колонтитуле и установить свойстваДанныев значение=Now(),а свойствоФормат поля- в значениеДлинный формат даты.

Выполнение вычислений. Другая задача, которая решается довольно часто - это проведение различных вычислений на основе таблиц. В качестве значения свойстваДанныелюбого элемента управления, позволяющего выводить данные, можно задать выражение для выполнения сложных вычислений с использованием арифметических операторов. Чтобы сообщитьAccess, что в свойствеДанныебудут использованы выражения, нужно ввод выражения начать со знака равенства (=).

Вычисление промежуточных итогов для групп. Еще одна задача, которую обычно приходится решать при составлении отчета - это получение итоговых величин по группам данным. Для этого в разделы примечаний для групп помещают дополнительные свободные элементы управления, в которых используются итоговые функции (sum, min, avgи др.).

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

Пример 1.В режимеКонструкторсоздать отчет СПИСКИ СТУДЕНТОВ на основе таблицы СТУДЕНТ. Для этого выполняются командыОтчетыСоздатьКонструкторВыбрать таблицуиОК. На экране будет пустой отчет (рис.1.13). Открыть список полей, щелкнув на кнопкуСписокполейна Панели инструментов, и перетащить оттуда поля как показано на рис. 1.14. После этого закрыть отчет и открыть его в режимеПросмотр. На экране должно быть примерно так, как на рис 1.15.

Рис.1.14. Однотабличный отчет Списки студентов в режиме Конструктор

Рис. 1.15 Однотабличный отчет Списки студентов в режиме Просмотр

Пример 2.С помощьюМастера отчетовсоздать отчет ИЗУЧЕНИЕ ПРЕДМЕТОВ В ГРУППЕ на основе трех таблиц: ИЗУЧЕНИЕ, ПРЕДМЕТ и ПРЕПОДАВАТЕЛЬ. Таблица ИЗУЧЕНИЕ – основная. Порядок создания отчета следующий.

После выполнения команд ОтчетыСоздатьМастер отчетоввыбрать таблицуи ОК. В окне выбрать поля: из таблицы ИЗУЧЕНИЕ –Номер группы, Вид занятий, Часы; из таблицы ПРЕДМЕТ –Название; из таблицы ПРЕПОДАВАТЕЛЬ –ФИО.

В следующем окне задать уровень группировки, выделив поле Номер группыи нажав на кнопку>. В очередном окне из списка выбрать полеНазваниеи порядок сортировки -По возрастанию. Чтобы произвести подсчет итоговых значений нужно нажать кнопкуИтогии выберать функциюSumдля поляЧасы. Далее в окне выбрать макет отчета –Ступенчатый. После этого выбрать стиль отчетаСжатый, затем задать имя отчетаИзучение предмета в группе,установить переключательПросмотреть отчетиГотово. На экране будет отчет (рис. 1.16)

Рис.1.16. Фрагмент отчета, созданный Мастером отчетов.

1.9. Создание и применение макросов

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

Макрос– программа, состоящая из последовательности макрокоманд.Макрокоманда - это инструкция, ориентированная на выполнение определенного действия над объектамиAccessи их элементами. Например, макрокоманды можно использовать для выполнения следующих действий:

- для открытия (или закрытия) любой таблицы, запроса, формы или отчета в любом доступном режиме;

- для выполнения запроса на выборку или запроса на изменение;

- для выполнения действий в зависимости от значений в базе данных, форме или отчете;

- для запуска других макросов или процедур VBA;

- для применения фильтра и запуска приложений;

- и многое другое.

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

Перед запуском макрос необходимо сохранить командой Файл ® Сохранить как/экспорт. В окне диалога ввести имя и нажать кнопкуОК.

Создание простого макроса

Чтобы создать простой макрос, нужно открыть окно базы данных, перейти на вкладку Макросыи нажать кнопкуСоздать. При этом открывается окно нового макроса.

Верхняя часть окна используется для определения нового макроса, а нижняя предназначена для ввода значений аргументов макрокоманд, включенных в макрос. В начале в верхней части присутствуют два столбца с заголовками МакрокомандаиПримечание. Можно увидеть все четыре столбца (рис.1.17), нажав кнопкиИменамакросовиУсловиена панели инструментов.

Макрокоманды, составляющие макрос, вводятся в столбец Макрокоманды(рис.1.18). Для ввода макрокоманды можно нажать в этом столбце кнопку раскрытия списка макрокоманд и выбрать нужную. В правой нижней части окна макроса выводится краткая справка, содержание которой зависит от положения курсора в верхней части окна макроса.

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

Использование в макросах ссылок на объекты.

При обработке данных в базе данных необходимо уметь правильно ссылаться на эти данные. Ссылки на формы, отчеты, их элементы управления формируются по определенным правилам.

Ссылаться на объекты можно по имени, но нужно учесть, что в Accessобъекты объединяются в семейства. Формы объединены в семействоФормы(Forms), отчеты – в семействоОтчеты(Reports). Поэтому ссылка на объект включает имя семейства и, через восклицательный знак, имя объекта. Например, для ссылки на форму необходимо записать так:Forms![Товары].

Рис.1.17.Окно нового макроса

Рис.1.18. Список макрокоманд в окне макроса

В ссылке на элемент управления вслед за именем объекта через восклицательный знак записывается имя элемента управления, заключенное в квадратные скобки. Например, в форме КАФЕДРА ссылка на элемент управления Надписьс именемНазваниезаписывается так:Forms![КАФЕДРА]! [Название].

Ссылка на подчиненную форму или отчет записывается так:

Forms![Имя формы]! [Имя подчиненной формы].Forms![Элемент подчиненной формы]

Структура некоторых макрокоманд.

1. Макрокоманда ОткрытьФорму. Позволяет открывать форму и отбирать данные. Аргументы макрокоманды:Имя формы(из списка выбрать имя),Режим(форма, конструктор, просмотр и др.),Имя фильтра(имя запроса на выбор данных),Условие отбора(условие на языкеSQL) и др.

2. Макрокоманда Закрыть. Закрывает форму, отчет, запрос и т.д. Аргументы макрокоманды:Тип объекта(форма, отчет, таблица и др),Имя объекта (Выбирается из списка),Сохранение(да, Нет, Подсказка)

3. Макрокоманда ПрименитьФильтр. Отбирает данные в открытой форме. Аргументы макрокоманды:Имя фильтра(имя запроса на выборку),Условия отбора(выражениеSQLбез словаWHERE).

4. Макрокоманда ЗадатьЗначение. Проводит вычисления в элементах управления форм, отчетов. Аргументы макрокоманды:Элемент(элемент управления типаПоле),Выражение(Арифметическое выражение или значение).

5. Макрокоманда Печать. Печатает открытую форму, отчет. Аргументы макрокоманды:Распечатать (Все, Фрагмент, Страницы),Со страницы(Начальная страница печати),По страницу(Конечная страница печати),Разрешение(качество печати: например, среднее),Число копий.

6. Макрокоманда Выход. Осуществляет выход изAccess. Аргументы макрокоманды:Параметры(Сохранить все, Подтверждение и др.).

Запуск макроса:

- из окнамакроса- нажать кнопкуЗапускна панели инструментов;

- из окна базы данных- нажать на вкладкуМакросы, установить курсор на имени макроса и нажать кнопкуЗапуск;

- из любого окна Access - следует выполнить команды

Сервис Макрос Выполнить макрос Указать имя макроса ОК

- автоматический запуск макроса при открытии базы данных- задать ему имяAutoExec.

Выполнение макроса с наступлением события

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

Создание кнопки запуска макроса в форме. Можно предусмотреть запуск макроса пользователем из формы путем нажатия кнопки. Эта кнопка должна быть связана с макросом. Для этого в свойствах кнопки на вкладкеСобытияв строкеНажатие кнопкизадается имя макроса.

Для создания кнопки в режиме Конструктор, запускающей конкретный макрос, необходимо:

- щелкнуть на кнопку Кнопкана панели элементов и нарисовать кнопку в форме (кнопкаМастераэлементовна панели элементов не нажата);

- сделать соответствующую надпись на кнопке;

- нажать кнопку Свойствана панели инструментов и в окне свойств на вкладкеСобытияв строкеНажатие кнопкиследует внести имя макроса.

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

На рис. 1.19 представлено приложение Access, работа которого осуществляется с помощью соответствующих макросов.

Рис. 1.19. Приложение Access «Обменный пункт»