- •Использование ms Access для создания баз данных
- •Технология работы с ms Access
- •Создание базы данных
- •Основные понятия ms Access. Объекты ms Access
- •Использование справки Microsoft Access
- •Выражения в ms Access
- •Использование значений в выражениях
- •Технология разработки базы данных
- •Создание таблицы
- •Операции с данными в таблице
- •Использование фильтра для отбора данных в таблице
- •Создание и использование формы
- •Создание и использование запроса
- •Создание и использование отчета
- •Создание web-страницы доступа к данным
- •Автоматизация выполнения задач обработки данных
- •Создание макроса
- •Использование модулей в ms Access
- •Процедуры: общие сведения
- •Создание кнопки с помощью мастера
- •Связь между таблицами и целостность данных
- •Определение связей между таблицами
- •Создание формы для связанных таблиц
Автоматизация выполнения задач обработки данных
Изучая текстовый процессор Word и табличный процессор Excel, мы уже знакомились с автоматизацией операций в Microsoft Office. СУБД Microsoft Access для целей автоматизации операций с объектами баз данных использует два типа средств: макросы и модули.
Макросом называют набор из одной или более макрокоманд, выполняющих определенные операции, такие, как открытие форм или печать отчетов. Например, при нажатии пользователем определенной кнопки можно запустить макрос, который распечатает отчет. Макрос может быть как собственно макросом, состоящим из последовательности макрокоманд, так и группой макросов. В некоторых случаях для решения, должна ли в запущенном макросе выполняться определенная макрокоманда, может применяться условное выражение.
Модулем называют набор описаний и процедур на языке Visual Basic для приложений, собранных в одну программную единицу.
В Microsoft Access многие действия выполняются с помощью макросов или через интерфейс пользователя. Во многих других СУБД для решения тех же самых задач требуется программирование. Выбор между созданием макроса или разработкой программы Visual Basic для приложений обычно определяется требуемыми действиями.
В каких случаях целесообразнее использовать макрос?
Макрос является удобным средством выполнения простых задач:
открытие и закрытие форм;
вывод на экран и скрытие панелей инструментов или запуск отчетов;
связывание различных объектов базы данных;
определение общих назначенных клавиш;
выполнение макрокоманды или набора макрокоманд при открытии базы данных.
Программы на Visual Basic используют вместо макросов в следующих случаях.
Упрощение управления базой данных. Поскольку макросы являются объектами, существующими отдельно от использующих их форм и отчетов, поддержание базы данных, в которой реакция на события в формах и отчетах определяется многими макросами, становится достаточно затруднительным. В отличие от этого процедуры обработки события Visual Basic являются встроенными в описания соответствующих форм и отчетов. При переносе формы или отчета из одной базы данных в другую встроенные процедуры обработки события автоматически переносятся вместе с формой или отчетом.
1. Создание пользовательских функций. В MS Access определен ряд встроенных функций, например функция IPmt, которая рассчитывает проценты по платежам. Встроенные функции можно использовать для выполнения вычислений без необходимости разрабатывать сложные выражения. Язык Visual Basic позволяет пользователям создавать также собственные функции как для решения задач, выходящих за рамки возможных для встроенных функций, так и для замены сложных выражений, содержащих встроенные функции. Кроме того, создаваемые пользователем функции используются в выражениях для выполнения общих операций над несколькими объектами.
2. Скрытие сообщений об ошибках. Стандартные сообщения об ошибках Microsoft Access, выводимые на экран при возникновении нештатных ситуаций во время работы с базой данных, могут оказаться малопонятными для пользователя, особенно если этот пользователь плохо знаком с MS Access. С помощью Visual Basic можно перехватывать ошибку при ее возникновении и либо выводить собственное сообщение об ошибке, либо предпринимать определенные действия.
3. Создание или обработка объектов. В большинстве случаев удобнее создавать или изменять объекты в режиме конструктора. Однако в некоторых ситуациях приходится работать с описанием объекта в программе. Средства Visual Basic позволяют выполнять обработку всех объектов в базе данных, а также самой базы данных.
4. Выполнение действий на уровне системы. Выполнение в макросе макрокоманды ЗапускПриложения (RunApp) позволяет запускать из собственного приложения другое приложение, работающее в среде Microsoft Windows или MS-DOS, однако этим возможности использования макроса вне Microsoft Access практически исчерпываются. Средства Visual Basic позволяют проверять существование файлов, использовать программирование объектов или динамический обмен данными (DDE) для связи с другими приложениями для Windows, например Microsoft Excel, а также вызывать функции из библиотек динамической компоновки (DLL) Windows.
5. Обработка записей по одной. Инструкции Visual Basic позволяют перебирать наборы записей по одной и выполнять определенные действия над отдельной записью. В отличие от этого макросы позволяют работать только с целым набором записей.
6. Передача аргументов в процедуры Visual Basic. Аргументы для макрокоманд можно задавать в нижней части окна макроса при его создании, но при выполнении макроса изменять их невозможно. Однако при помощи Visual Basic можно передавать аргументы в выполняемую программу или использовать в качестве значений аргументов переменные; макросы не позволяют делать это. Передача аргументов повышает гибкость выполнения процедур Visual Basic.
Использование модулей требует достаточно серьезной программистской подготовки. Сначала мы рассмотрим использование макросов как средств автоматизации в MS Access, используемых пользователями, не владеющими основами программирования на Visual Basic.
Макросы в Microsoft Access 2002 являются достаточно эффективным средством автоматизации, так как в этой версии СУБД представлены новые макрокоманды, с помощью которых можно открывать страницы доступа к данным и новые объекты базы данных, диаграммы, сохраненные процедуры и представления в проекте Microsoft Access (.adp).
