Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
SC_sem6_2012_BD_w1.doc
Скачиваний:
0
Добавлен:
25.09.2019
Размер:
1.46 Mб
Скачать

3.5 Макросы

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

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

Например, для макроса «Отчисление» создадим такую последовательность: выводится сообщение о событии, затем вызывается запрос «Отчисление», который удаляет у студентов ссылки на группы, а затем запрос на удаление отчисленных студентов. Аргументы макрокоманды заполняются через вспомогательную панель «Аргументы макрокоманды», которая располагается в нижней части конструктора. Аналогично составим макросы «Перевод на курс старше» и «Удаление групп». На рисунках 3.25, 3.26 и 3.27 показаны конструкторы созданных макросов.

Рисунок 3.25 Макрос «Отчисление»

Рисунок 3.26 Макрос «Перевод на курс старше»

Рисунок 3.27 Макрос «Удаление групп»

3.6 Отчеты

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

  • Результаты сессии по группе;

  • Результаты сессии по студенту;

  • Общая успеваемость студентов.

Для создания отчетов перейдем в раздел «Создание» и в блоке «Отчеты» нажмем на «Мастер отчетов». Выберем запрос «Результаты по группам». В пределах запроса выберем поля «Наименование», «Номер зачетки», «ФИО», «Результат», «Год обучения» и «Номер группы». Группировку будем осуществлять по наименованию дисциплины, сортировать по фамилии и в качестве макета выберем «Блок». Сохраним отчет под именем «Результаты сессии по группе». Переставим поля и изменим их размеры посредством конструктора, чтобы отчет выглядел эстетично. Например, для группы 90 отчет будет выглядеть так, как показано на рисунке 3.28.

Рисунок 3.28 Отчет о результатах группы 90

Аналогично поступим с отчетом по студенту. В качестве источника данных будем использовать отчет «Результаты сессии по студенту». На рисунке 3.28 приведен отчет по студенту Гузееву Тимуру Витальевичу.

Отчет об успеваемости факультета будем строить по двум таблицам: «Студенты» и «Успеваемость». Включим в отчет все поля таблицы «Успеваемость» и «ФИО» таблицы «Студенты». Группировать записи будем по году обучения и по номеру группы. Макет выберем «Ступенчатый». На рисунке 3.30 показана часть отчета об успеваемости студентов

Рисунок 3.29 Отчет о результатах студента

3.7 Формы

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

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

Поместим в область данных заготовки элемент управления «Вкладка». Создадим четыре вкладки, несколько кнопок и надписей к ним как показано на рисунках 3.31–3.34.

Рисунок 3.30 Отчет по успеваемости групп факультета

Рисунок 3.31 Общий вид заготовки основной формы

Рисунок 3.32 Вкладка «Обновление базы»

Рисунок 3.33 Вкладка «Отчеты»

Рисунок 3.34 Вкладка «Запросы»

В данной реализации мы ограничимся только заполнением таблицы «Студенты». Теперь создадим стандартные формы для таблиц и запросов, к которым мы будем привязывать кнопки. Будем использовать стандартную заготовку «Несколько элементов» в блоке «Формы». Чтобы создать стандартную форму, нужно выбрать «Запрос» или «Таблицу» и нажать на кнопку «Несколько элементов».

Все запросы у нас уже есть, кроме запроса «Должники». Конструктор данного запроса показан на рисунке 3.35.

Рисунок 3.35 Запрос «Должники»

Теперь привяжем к кнопкам элементы базы данных. К кнопке вкладки «Ввод данных» привязывается форма таблицы «Студенты». К кнопкам вкладки «Запросы» привязываются формы соответствующих запросов. К кнопкам вкладки «Обновление базы» привязываются макросы, а к кнопкам вкладки «Отчеты» соответственно отчеты. Привязка во всех случаях одинакова, поэтому покажем ее на примере кнопки «Добавление студента». Выделим кнопку и в окне свойств выберем вкладку «События» (рисунок 3.36). Выберем событие «Нажатие кнопки», а затем нажмем на появившееся троеточие. Откроется окно макроса кнопки, в котором нужно выполнить те же действия, что и при создании простого макроса (в нашем случае выбрать шаблон «Открыть форму»).

Рисунок 3.36 Окно свойств

Проведя все привязки, можно считать, что база данных на СУБД Microsoft Access завершена и приступить к ее тестированию.

В качестве бонуса добавим еще один запрос, который выводит расписание сессии. Его конструктор показан на рисунке 3.37.

Рисунок 3.37 Запрос «Расписание сессии»

От повторяющихся строк мы избавляемся уже знакомой нам директивой DISTINCT.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]