Проверку правильности вводимых данных выполняет
Validate
Проверку правильности вводимых данных выполняет событие
Validate элемента управления Data. Объявим это событие.
Private Sub object_Validate (action As Integer, save As Integer)
Параметр
action (действие) — это целое число, задающее операцию, выполнение которой вызывает данное событие. Его значения приведены в табл. 17.7.
Таблица 17.7. Значения параметра action (действие) события Validate
Константа |
Значение |
Описание |
vbDataActionCancel |
0 |
Отмена операции при выходе из процедуры |
vbDataAction Move First |
1 |
Метод MoveFirst (Перейти к первой записи) |
vbDataActionMovePrevious |
2 |
Метод MovePrevious (Перейти к предыдущей записи) |
vbDataActionMoveNext |
3 |
Метод MoveNext (Перейти к следующей записи) |
vbDataActionMoveLast |
4 |
Метод Move Last (Перейти к последней записи) |
vbDataActionAddNew |
5 |
Метод AddNew (Добавить новую запись) |
vbDataAction Update |
6 |
Операция обновления (не LfpdateRecord) |
vb DataAction Delete |
7 |
Метод Delete (Удалить) |
vb DataAction Find |
8 |
Метод Find (Найти) |
vbDataAction Bookmark |
9 |
Установлено свойство Bookmark (Закладка) |
vb DataActionClose |
10 |
Метод Close (Закрыть) |
vbDataActionUnload |
11 |
Выгрузка формы из памяти |
Чтобы отменить операцию, вызвавшую событие Validate, значение vbDataActionCancel может устанавливаться с помощью кода. Например, если пользователь изменяет данные в элементе управления, а затем щелкает на кнопке MoveNext, то можно отменить изменения и операцию MoveNext.
Параметр
save (сохранить) — это выражение типа Boolean, указывающее, изменялись ли данные. Можно установить его значение в False, чтобы отменить изменения.
Error
Другим полезным событием при проверке правильности данных является событие Error (Ошибка). Когда модифицируется запись в базе данных, механизм JET гарантирует, что введенные данные не противоречат правилам, определенным при проектировании базы данных. Например, если требуется, чтобы указанное поле было уникальным, то запись не будет модифицирована, если введенное значение уже использовалось. Если поле превышает максимальную длину, изменения будут также отклонены. Другими словами, механизм JET производит проверку данных самостоятельно. Он также выполняет проверку данных в соответствии с правилами, определенными в поле Validation Rule.
Если данные не удовлетворяют правилам, определенным в проекте базы данных, то генерируется ошибка выполнения программы. Перед сообщением об ошибке генерируется событие Error. Можно выявить причину ошибки, вызвав ее обработчик.
Объявим событие Error.
Sub Error (dataerr As Integer, response As Integer)
Параметр
dataerr (данные об ошибке) — номер ошибки, a response
(отклик) — целое число, которое устанавливается при появлении события, чтобы затем в обработчике ошибки выполнить соответствующие действия. Значения параметра response
перечислены в табл. 17.8. Ошибку необходимо обработать внутри процедуры Error и затем установить параметр response в 0, чтобы предотвратить генерирование ошибки выполнения программы.
Таблица 17.8. Значения параметра Response события Error
Константа |
Значение |
Описание |
vbDataErrContinue vbDataErrDisplay |
0 1 |
Продолжать выполнение Отображение сообщения об ошибке (установлена по умолчанию) |