Иллюстрированный самоучитель по Microsoft Access 2002

Программирование в формах и отчетах. События Access.

События фильтра

События фильтра происходят при применении или удалении фильтра в форме.

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

Событие Применение фильтра (ApplyFilter) возникает во всех случаях, когда пользователь выполняет фильтрацию записей в форме с помощью соответствующих команд меню, контекстного меню или кнопки панели инструментов (применить или удалить фильтр). Программу обработки этого события обычно используют либо для проверки условия в фильтре, либо для изменения вида формы перед применением фильтра, если требуется скрыть лишние поля или, наоборот, показать скрытые. Программа обработки события имеет два параметра – Cancel и ApplyType. Cancel позволяет отменить операцию фильтрации, если, например, условие сформулировано неправильно, для чего нужно присвоить ему значение True. ApplyType определяет исполняемое действие и может принимать значения 0, 1 и 2. Значение 0 указывает на удаление фильтра, 1 – на применение фильтра, 2 – на закрытие окна фильтра.

Замечание
Событие не возникает при выполнении операций фильтрации с помощью макрокоманд ПрименитьФильтр (ApplyFilter), ОткрытьФорму (OpenForm), ПоказатьВсеЗаписи (ShowAllRecords), соответствующих им методов объекта DoCmd, или при закрытии окна фильтра (любого) с помощью макрокоманды Закрыть(Close)
.

Фильтрация

Событие Фильтрация (Filter) возникает перед открытием окна фильтра или расширенного фильтра, когда пользователь пытается выполнить команду Изменить фильтр (Filter by Form). Использовать это событие очень удобно, если требуется, например, ввести в фильтр некоторые условия по умолчанию или запретить включать в условия отбора некоторые поля. Чтобы запретить включать некое поле в условие отбора в окне фильтра, достаточно скрыть его в процедуре обработки события Фильтрация (Filter). Правда, это относится только к окну обычного фильтра, т. к. в окне расширенного фильтра выводятся все поля, в том числе и скрытые. Можно даже заменить стандартное окно фильтра своим собственным, в котором пользователь и будет задавать условия отбора.

Процедура обработки события имеет два параметра – Cancel и FilterType. Cancel позволяет отменить открытие стандартного окна фильтра, если вместо него будет выводиться специальная форма, для чего нужно присвоить ему значение True. Параметр FilterType определяет, какое окно открывается, и может принимать значения 0 или 1. Значение 0 соответствует обычному фильтру, 1 – расширенному фильтру.

Событие ошибок

Событие Ошибка (Error) возникает, когда в процессе обработки формы или отчета ядром Access возникает ошибка. В процедуре обработки этого события можно перехватить стандартное сообщение об ошибке, которое выдает Access, и выдать собственное сообщение. Процедура имеет два параметра – DataErr и Response. Параметр DataErr содержит код ошибки, а параметр Response может принимать два значения – 0 и 1. Значение 0 отменяет выдачу стандартного сообщения об ошибке, а 1 – позволяет его отобразить.

Замечание
Это событие не возникает, когда ошибка встречается в коде VBA
.

Событие таймера

Событие Таймер (Timer) возникает регулярно через интервал времени, который задается свойством Интервал таймера (Timerlnterval) формы. Оно позволяет определять действия, которые должны выполняться периодически по сигналу таймера. Обычно используется для регулярных обновлений экрана в многопользовательском приложении, тогда в процедуре обработки события Таймер (Timer) нужно использовать метод Requery, который будет выполнять повторный запрос источника данных формы.

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.