Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Otchet_7

.docx
Скачиваний:
5
Добавлен:
07.11.2020
Размер:
789.18 Кб
Скачать

ГУАП

КАФЕДРА ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ ПРЕДПРИНИМАТЕЛЬСТВА

ОТЧЕТ ЗАЩИЩЕН С ОЦЕНКОЙ

ПРЕПОДАВАТЕЛЬ

Ст.преп.

Н.В. Зуева

должность, уч. степень, звание

подпись, дата

инициалы, фамилия

ОТЧЕТ О ЛАБОРАТОРНОЙ РАБОТЕ №7

Работа с макросами

по курсу: Базы данных

РАБОТУ ВЫПОЛНИЛ

СТУДЕНТ ГР.

.

подпись, дата

инициалы, фамилия

Санкт-Петербург 20

Цель работы: Решение практических задач в среде Access с применением макросов.

Ход работы:

  1. Автоматический запуск макроса.

Для создания автоматического макроса, я в меню СОЗДАНИЕ открыл вкладку Макрос. В выпадающем списке выбрал макрокоманду Открыть форму.

Рисунок1.

  1. Линейный макрос.

Задание: Необходимо при просмотре дисциплин, получить записи о двоечниках по просматриваемым дисциплинам.

    1. Создаю запрос «ЗапрДВ». Исходной будет таблица Оценки с условием отбора =2.

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

Рисунок2.Форма двоечники

    1. Создаю макрос «Двоечники»

Он состоит из двух макросов.

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

Рисунок 3. Макрос Двоечники о1.

Во вложенном макросе о2 применяется фильтр. Он фильтрует записи о двоечниках по значению Код дисциплины, взятой из записи формы Дисциплины. В строке Условие отбора введем [Код дисциплины] =[Формы]! [Дисциплины]! [Код дисциплины]

Рисунок 4. Макрос Двоечники о2.

Для запуска группы о1 устанавливаю связь Открытия формы Дисциплины с макросом, для этого в режиме конструктор формы Дисциплины, открываю свойства формы, вкладка События, Открытие- выбираю макрос Двоечники7.о1.

Для выполнения о2.

КЗМ поля Код дисциплины, свойства поля, вкладка События, вход- Двоечники7.о2

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

Рисунок 5. Результат выполнения макроса.

  1. Условный макрос.

    1. Отчисление студента.

Создаю 2 запроса.

  1. «Добавление_в_архив» (Из таблицы Студенты в таблицу Архив). Условие отбора: Код студента: [Forms]![СТУДЕНТЫ]![Код студента]. Команда ДОБАВЛЕНИЕ.

  2. «Отчисление студента». (Для удаления из таблицы Студенты). Условие отбора: Код студента: [Forms]![СТУДЕНТЫ]![Код студента].

Теперь создаю макрос «Отчислениеее». Из каталога команд добавляем Вложенный макрос и условие Если.

Рисунок 6. Макрос Отчислениеее

Чтобы выполнялась группа D необходимо зайти к режиму конструктора в форму Студенты, для поля Код студента, окно свойств, вкладка События, Двойное нажатие кнопки- и выбираю Отчислениеее.D.

Рисунок 7. Окно свойств поля Код студента.

    1. Восстановление студента.

Создаю 2 запроса

  1. «Добавление_в_студенты»

  2. «Удаление_из_архива». Условия отбора для поля «Код_студента»: [Forms]![Архив]![Код_студента]

Также создаю макрос «Восстановление»

Из каталога команд добавляем Вложенный макрос и условие Если.

Чтобы группа U выполнялась. В режиме конструктора открываем форму АРХИВ,

для поля Код студента, Свойства, вкладка События, Двойное нажатие кнопки – Восстановление. U

Рисунок 8. Восстановление

Рисунок 9.Окно свойств поля Код студента.

    1. Режим диалога.

С помощью Конструктора форм, создаю форму «Действие». (Элемент управления: Поле со списком.)

Рисунок 10. Форма Действие

Рисунок 11. Окно свойств

Создаю макрос «Действие».

Рисунок 11. Макрос Действие

Рисунок 12. Макрос Действие

Для выполнения макроса «Действие. О». В форме «Действие» в режиме конструктора, В Свойствах, во вкладке События, Поле обновления - Действие. О.

Рисунок 13.

В формах «СТУДЕНТЫ» и «АРХИВ» добавляем кнопки Главное окно и Выход.

Кнопка «Главное окно» вызывает действие. Кнопка Выход закрывает форму.

Макрос Действие открывает форму «Действие».

Рисунок 14.

При двойном щелчке мышью по полю Код студента, открывается диалоговое окно. Отчисляем студента под кодом «2» - Киршина.

Рисунок 15.

Видим, что студента с Кодом студента «2». Больше нет в списке.

Рисунок 16.

Теперь он находится в «АРХИВ».

Рисунок 17. Архив ленточная форма.

Восстановим его. Нажимая на кнопку «Главное окно», в ленточной форме АРХИВ, переходим в «Действие».

Рисунок 18.

Рисунок 19.

Рисунок 20. Киршин восстановлен

4.Взаимодействие форм.

Я создал дополнительно две таблицы: Склад и Заказ.

В таблице склад содержится информация о товарах. В таблице заказ информация о товарах, отгруженных со склада. Они соединены связью Один-ко-Многим по полям Код товара. Сразу создаю формы для этих таблиц.

Рисунок 21. Схема данных

Создаю запрос на выборку на основе таблицы Склад и задать условие отбора: [Forms]![3аказ1]![Код товара] .

Создаем макрос на открытие формы МакЗаказ1.

Рисунок 22. Макрос МакЗаказ1

Создаю форму Склад Запрос1 и на его основе макрос Запрос Склад, который будет открывать эту форму.

Рисунок 23. Макрос Запрос Склад.

Открываю форму Заказ1, поле Код товара, Свойства поля, вкладка События, Двойное нажатие кнопки - имя макроса Запрос Склад.

Создаю «запрос на обновление Склад» на основе таблицы «Склад». Для изменения записей в таблице.

Меню Создание. Конструктор запросов. Выбор таблицы. Нажимаю кнопку «ОБНОВЛЕНИЕ». Выполнить.

Рисунок 24. Запрос на обновление

Теперь создаю макрос «Склад». И чтобы стоимость автоматически вычислялась нужно в форме Заказ1 в режиме конструктора открыть КЗМ поля Количество, вкладка Событие, Потеря фокуса – Склад.

Рисунок 25. Макрос СКЛАД

Рисунок 26.Макрос СКЛАД

Рисунок 27. Форма склад.

Делаем заказ на 15 матрацев (Код товара 2)

Рисунок 28.

Посмотрим сколько товара на складе.

Рисунок 28.

После выполнения заказа на складе осталось 5 матрацев.

Рисунок 29.

Вывод:

В ходе работы я познакомился с созданием различных макросов в Access.

КОНТРОЛЬНЫЕ ВОПРОСЫ

  1. Какие функции выполняет макрос AutoExec?

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

  1. Виды макросов?

Автоматический. Линейный. Условный. Макрос взаимодействия форм.

  1. Назначение макросов?

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

  1. Какие аргументы имеет макрокоманда Открыть запрос?

Имя запроса. Вид. Режим данных.

  1. Какая макрокоманда позволяет из макроса вывести на экран сообщение?

Вывод на экран

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

Для временного отключения вывода на экран окон сообщений используется макрокоманда Установить сообщение. В строке аргумента Включить сообщения выбираем НЕТ.

  1. Как изменить последовательность выполнения макрокоманд в макросе?

Макросы могут выполняться последовательно или с использованием условий. Порядок выполнения макрокоманд может быть изменен. Для этого вводятся условия выполнения или пропуска макрокоманд. Эти условия задаются в виде выражений в столбце, который появляется в окне Каталог макрокоманд. Если нажата кнопка Условия на панели инструментов/

  1. Назначение макрокоманды Сдвиг Размер?

Изменяет размер поля или передвигает его

  1. Какая макрокоманда позволяет изменить текущую запись в объекте?

Применить фильтр

  1. Какая макрокоманда изменяет значение поля записи?

Задать Значение

Соседние файлы в предмете Базы данных