2015-04-29 7 views
2

У меня есть правила проверки, установленные в таблице дизайна, и я хочу проверить его, прежде чем сохранять изменения, внесенные в набор записей.Как проверить правило проверки в VBA/Access

+0

Вы используете формы доступа для ввода данных? как вводятся данные? –

+0

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

ответ

-1

Используйте форму для ввода данных.

Затем используйте те же правила проверки в событиях BeforeInsert и BeforeUpdate формы.

+1

да, как программно проверить правила валидации? например: if (TestValidationRule (control.Value, recordset.ValidationRule)) then recordset.Update заметить, что я ссылаюсь на правило проверки набора записей, а не на элемент управления. –

+0

Вы можете в свойствах управления реплицировать правило проверки для поля ans также указать сообщение. Однако гораздо более гибко использовать события BeforeUpdate и/или BeforeInsert. Установите Cancel = True в случае ошибки проверки. – Gustav

+1

привет Густав. спасибо за помощь. Я получил его без повторения правила проверки. Я все еще работаю над кодом, поэтому я еще не опубликовал его здесь. Я обращаюсь к правилу проверки поля таблицы через свойства набора записей и тестирую его программно. если тест возвращает true, я сохраняю изменения, сделанные в наборе записей (recordset.Update). если он возвращает false, я запустил окно сообщения, в котором текст проверки был также получен через набор записей (recordset.Fields (control.RecordSource) .ValidationText). он отлично работает для меня. –