Access 2002

Ваш друг — функция MsgBox


Для получения информации о состоянии программы вместо точек останова можно использовать функцию MsgBox. В этом случае вы решаете, что именно хотите проконтролировать, и вызываете функцию MsgBox для того, чтобы она отобразила на экране компьютера необходимую информацию. Кроме того, можно создать собственную функцию (оболочку для MsgBox), которая будет выводить сообщения только в том случае, когда определенная вами константа условной компиляции имеет заданное значение. Эта константа определяет, будет ли ваша функция прерывать выполнение программы или просто вернет управление вызвавшей процедуре. Такая функция (названная нами adhDebugMessageBox) приведена  12.20, а находится она в модуле basError базы данных CH12.MDB. Чтобы использовать ее в своем приложении, импортируйте в него этот модуль. Как вызывать функцию adhDebugMessageBox, рассказывается чуть ниже.

Вы можете расставить вызовы функции adhDebugMessageBox по всей программе, и они ничуть не помешают выполнению окончательного варианта приложения. Для отладки можно активизировать вывод сообщений, а потом просто отключить их, изменив значение константы условной компиляции DEBUGGING. Обычно эти сообщения используются для получения информации о состоянии программы и о ходе ее выполнения. Вот, например, возможный фрагмент функции AutoExec (названной по имени макроса AutoExec) из вашего приложения:

В функции adhDebugMessageBox использована технология, называемая условной компиляцией. Условная компиляция позволяет включать или исключать отдельные части программного кода из приложения. Оператор Const определяет константу (или аргумент) условной компиляции. Есть еще один способ задания констант условной компиляции: их можно указать в диалоговом окне параметров проекта VBA, открываемом по команде Tools <ИмяПроекта> Properties (на странице General в поле Conditional Compilation Arguments).

Комментарии закрыты