Упражнение 6.7.1. Макрос для последовательного выполнения запросов




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

Пусть необходимо подсчитать количество студентов в группах и внести эти данные в поле КОЛ таблицы ГРУППА. Подсчет количества студентов реа­лизован запросом Фактическое число студентов. Обновление поля КОЛ на осно­ве полученных в этом запросе данных выполняет запрос Обновление ГРУППА_КОЛ. Поставленная задача решается путем последо­вательного выполнения таких запросов.

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

1. Чтобы начать создание макроса в окне базы данных, выберите вкладку Макросы и нажмите кнопку Создать. Откроется окно макроса.

2. Макрокоманды, составляющие макрос, вводятся в столбец ма крокоманда. Для ввода макрокоманды нажмите кнопку раскрытия списка макрокоманд в этом столбце и выберите ОткрытьЗапрос, чтобы выполнить первый запрос.

3. Имя запроса Фактическое число студентов выберите из списка в разделе Ар­гументы макрокоманды в нижней части окна макроса.

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

5. Для выполнения запроса Обновление ГРУППА_КОЛ введите макроко­манду ОткрытьЗапрос. Порядок размещения макрокоманд в бланке определяет последовательность их выполнения.

6. Чтобы включить в макрос эту макрокоманду, воспользуйтесь перетаски­ванием объектов с помощью мыши. В окне базы данных выберите запрос Обновление ГРУППА_КОЛ и перетащите его в строку макрокоманды. Сформируется макрокоманда ОткрытьЗапрос, в аргументах которой автоматически появится имя открываемого запроса, режим ото­бражения запроса и режим работы с его данными.

7. Сохраните макрос под именем Расчет числа студентов в группах, вос­пользовавшись кнопкой панели инструментов макроса Сохранить.

8. Запустите макрос, нажав кнопку панели инструментов Запуск.

9. Во время выполнения макроса на экран выводятся предупреждающие сообщения, выдаваемые выполняющимися запросами. Для временного отключения вывода на экран окон этих сообщений дополните макрос макрокомандой УстановитьСообшения. В строке аргумента Включить сообщения выберите значение Нет (No). Для во­зобновления вывода сообщений после выполнения запросов надо было бы задать значение Да (Yes). Однако эту макрокоманду можно опустить, поскольку после прекращения работы макроса вывод предупреждений восстанавливается автоматически.

10. Организуйте вывод на экран таблиц ГРУППА и Число студентов; чтобы сделать наглядным процесс работы макроса и обновления таблицы. Для этого дополните макрос так, как показано на рис. 6.7.1.

11. Закройте макрос и запустите его из окна базы данных, воспользовав­шись кнопкой Запуск.

12. Ход и результаты выполнения запроса по обновлению поля КОЛ ото­бражаются на экране в виде сообщений и таблиц.

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

Рис. 6.7.1. Макрос задачи в режиме конструктора

 

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

q Свернуть позволят свернуть окно, которое было активным в момент запуска макроса на выполнение. Если макрос запускается из ок­на базы данных и кроме этого окна нет открытых окон, на экране будет отображено только свернутое окно базы.

q ОткрытьТаблицу открывает таблицу ГРУППА. Имя таблицы и режим ее открытия указываются аргументами макрокоманды. Открытая таблица ГРУППА будет отображаться на экране до выполнения макро­команды Закрыть. Это позволит просмотреть содержимое таблицы до и после выполнения запросов.

q СдвигРазмер позволяет задать размер и местоположение окна активного объекта. В результате выполнения макрокоманды после откры­тия таблицы изменяются параметры окна таблицы.

q Сообщение выдает сообщение, указанное в аргументах макро­команды.

q Восстановить восстанавливает окно, свернутое перед решением задачи.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2016-02-16 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: