Окно отладки в Microsoft Access 97 состоит из панели выполнения (область в нижней части окна отладки) и вкладок Локальные и Контрольные.Окно отладки открывается вследствие вызова команды Окно отладкииз меню Вид. Данная команда доступна, когда открыто окно модуля.
Во вкладке Локальныеотображаются имена, текущие значения и типы всех переменных текущей процедуры. В этой вкладке вы можете изменить значение переменной, но не выражение для ее вычисления или тип. Содержимое вкладки локальных переменных автоматически обновляется в момент перехода программы из режима выполнения в режим останова. Это происходит, когда программа достигает контрольной точки, а также при пошаговом выполнении программы.
Во время выполнения кода программы на вкладке Контрольныевидны текущие значения определенных вами переменных и выражений. Выбрать выражение для наблюдения позволяет команда Добавить контрольное значениеиз меню Отладка.
В панели выполнения, занимающей нижнюю часть окна отладки, можно в любой момент просмотреть и изменить значения переменных, а также запустить процедуры для отладки или выполнить различные операторы. Существует возможность управления данной панелью из программы: в нее можно помещать промежуточные результаты (отладочную информацию) После выполнения программы эта информация останется в панели.
В панели выполнения осуществляется ввод всевозможных операторов, например:
for 1 = 1 to 10 : print "Повтор" : next i
После нажатия клавиши [Enter] введенный оператор выполняется.
Операторы цикла должны находиться в одной строке. В этом случае для их разделения принято использовать двоеточие. На практике в панели выполнения чаще всего применяется оператор Print. Он позволяет отобразить содержимое переменных в этой панели Модуль, в котором объявлены переменные, должен быть открыт.
Рис.6.10 Оператор, введенный в панели выполнения
Примечание:
Вместо оператора Print можно использовать знак вопроса.
Изменение значения переменной в этой панели осуществляется так же, как и внутри процедуры. Если попытаться занести значение в поле формы с помощью оператора присваивания, введенного в панель выполнения, то в окне формы изменяемая запись будет отмечена (в колонке маркировки появится изображение карандаша), а в изменяемом поле отобразится новое значение.
Из панели выполнения можно вызвать и подпрограмму, и функцию. Поскольку подпрограмма не возвращает значения, ее вызов осуществляется в результате ввода имени процедуры. Для вызова функции следует использовать оператор Print.
Процедура Вызов
Function Print Имя _Функции()
Sub Имя _Процедуры
Пошаговая отладка больших процедур может занять много времени, поэтому рекомендуется прибегать к более прогрессивной технологии контрольных точек (breakpoint). При ее использовании останов выполняется не перед каждым оператором процедуры, а только перед теми, на которых пользователь установил контрольные точки. Access 97 выполняет процедуру с контрольными точками, как обычную, но, достигнув контрольной точки, останавливается и дает пользователю возможность проанализировать (изменить) значения переменных в панели выполнения. Для продолжения выполнения достаточно нажать кнопку Перейти/продолжитьили функциональную клавишу [F5]. Количество точек останова ограничено только количеством строк программы. Контрольные точки устанавливаются на один сеанс. Они удаляются непосредственно после закрытия базы данных.
Для создания контрольной точки следует установить курсор в соответствующей строке программного кода в окне модуля и выполнить щелчок на кнопке контрольной точки на панели инструментов. Тот же результат может быть получен вследствие щелчка в колонке маркировки.
Строка, содержащая контрольную точку, выделяется цветом в соответствии с установками в окне настройки. Контрольная точка будет удалена, если установить курсор в той строке, в которой она находится, и щелкнуть на кнопке контрольной точки (можно также выполнить повторный щелчок в колонке маркировки).
Примечание:
Если строка содержит несколько операторов, отделенных друг от друга двоеточиями, Access 97 сочтет, что контрольная точка установлена на первом из них. Для установки контрольных точек на других операторах этой строки нужно разместить операторы в отдельных строках.
Для автоматического вывода значений переменной в панель выполнения во время выполнения программы пользуйтесь функцией печати объекта Debug. При выводе информации из различных фрагментов программы следует сопровождать каждое сообщение комментариями, например: