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

Процедура-функция для обработки событий в формах.

Как правило, процедуры-функции ориентированы на обработку событий. Access 97 позволяет связывать разработанные процедуры-функции с вычис­ляемым полем несколькими способами (например, можно создать процеду­ру-функцию, которая будет вызываться при выполнении щелчка на некото­ром поле, из макроса или из другой процедуры). Способ связывания зависит от типа процедуры-функции.

Результат выполнения процедуры-функции обычно применяется:

— в качестве значения по умолчанию для поля таблицы; — в качестве значения критерия для запросов или фильтров;

— в качестве содержимого поля.

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

значений цен в рублях, вызов процедуры должен осуществляться после актуализации поля Цена в рублях;

• Откройте форму Прейскурант цен в режиме конструктора.

• Маркируйте поле Цена в рублях и откройте окно свойств формы, акти­визировав в ее контекстном меню команду Свойства.

• На вкладке События задайте в поле После обновления вызов функции в такой форме.

=Рубли_в_Доллары ()

• Перейдите в режим конструктора формы и сохраните изменения. Внимание!

Если после имени функции не введена пара скобок, Access 97 заключит это имя в квадратные скобки и будет рассматривать как имя поля.

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

Р ис. 6.7. Окно выбора построителя

Нажмите кнопку ОК, вследствие чего произойдет запуск Построителя выражений и откроется его диалоговое окно.

Р ис. 6.8. Связывание процедуры с помощью построителя выражений

В левом списке окна построителя найдите папку с функциями и выпол­ните двойной щелчок, чтобы открыть ее. В списке категорий функций выберите функции для базы данных Почта и откройте список модулей базы, находящийся в средней части окна построителя. Затем выберите созданный нами модуль (Прейскурантные расчеты) и дважды щелкните на функции Рубли_в_Доллары (вы найдете ее в третьем списке). В верхней области окна будет сформировано выражение для вызова функции Рубли_в_Доллары:

Рубли_в_Доллары ()

Нажмите кнопку ОК, и построитель завершит свою работу, передав управление конструктору форм.

С этого момента каждое значение, введенное в поле Цена в рублях, будет автоматически пересчитано и занесено в поле Цена в долларах. Пересчет выполняется и после изменения текущего значения цены в рублях.

Примечание:

Чтобы процедура выполнялась, она должна быть скомпилирована. Этот процесс автоматизирован и занимает очень мало времени, но нужно быть готовым к возможному появлению сообщения об ошибке (если, конечно, ошибка будет обнаружена). Компилирование может быть произведено принудительно (если пользователь захочет проверить код на наличие ошибок) — с помощью команды Компилировать загруженные модули из меню Отладка.

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