Еще одна команда « Перейти к оператору » позволяет переходить на любой оператор текущей подпрограммы без выполнения команд между ним и текущим оператором, на котором остановлена программа. Эта команда позволяет, как переходить вперед, например, пропуская какие-либо проверки, так и возвращаться назад, повторяя отдельные части подпрограммы. Для перехода необходимо установить курсор в тексте программы на нужное место и дать эту команду. В новом отладчике она назначена на сочетание клавиш Shift+F12.В классическом отладчике вызывается только через меню.
В классическом отладчике есть еще одна команда « Выполнить PAI -/ PBO -модуль ». По этой команде возобновляется обычная работа программы как при команде « Дальше ». Но как только начинает выполняться PAI или PBO логика экрана – программа вновь останавливается, и Вы попадаете в отладчик.
Кроме команд управления отладкой есть две команды для ее прекращения. При этом первая отключает отладку, и работа программы продолжается в обычном режиме. Вторая отключает отладку и прерывает дальнейшее выполнение программы. Данные команды в новом отладчике называются « Завершить работу » и « Выход из приложения и отладчика », а в старом « Выключить отладку » и « Перезапуск », соответственно. Отключить отладку и прекратить выполнение программы также можно стандартными кнопками выхода и отмены на панели инструментов.
Точкой прерывания (breakpoint) называется место в программе, достигнув которого программа остановится и будет открыта в отладчике. Смысл существования точки прерывания заключается в ускорении процесса отладки. Например, если Вы знаете место, в котором возникает ошибка, но пока не понимаете почему, Вам нужно остановить выполнение программы и проанализировать данные, которые «придут» в это место. В этом случае вместо того, чтобы по шагам идти по всей программе до нужного кода, вы можете установить в нем точку прерывания и запустить программу в обычном режиме. Когда точка будет достигнута – программа остановится, и Вы окажетесь в отладчике.
Точки прерывания могут быть различных типов. Самой простой точкой является точка прерывания сеанса (Session BP). Такая точка устанавливается в редакторе кода с помощью пункта меню Утилиты -Точки прерывания-Установить/Удалить . При этом в строке с курсором слева появится соответствующая иконка – вот такая
,
которая как раз говорит, что в этой строке установлена точка прерывания. Кроме появления иконки, о наличии точки прерывания будет сигнализировать подсвеченная темно-красным строка. Также точку можно поставить, нажав комбинацию клавиш Ctrl + Shift + F 12,нажав кнопку в панели инструментов или кликнув мышью на сером поле слева (там, где появилась иконка). Снять точку прерывания можно, выполнив те же действия, что и при ее установке. Установленные таким способом точки прерывания будут работать в течение всего сеанса работы пользователя, установившего точку, пока он не удалит ее. После выхода из системы (манданта) сеанс прерывается и точки теряются.
Разновидностью точки прерывания сеанса является точка прерывания отладчика (Debugger BP). Такую точку можно установить, только находясь непосредственно в отладчике. Точка устанавливается с помощью пункта меню Точки прерывания-Точка прерывания строк-Установить/Удалить или клавишей F 9(в старом отладчике – Точки прерывания-Установить/Удалить или комбинацией Shift + F 4). Также можно кликнуть мышью на сером поле, а в новом отладчике – на кнопку в панели инструментов
.
При установке точки слева от строки появляется иконка
,
а в новом отладчике строка дополнительно подсвечивается зеленым. Удаляется точка аналогично тому, как устанавливается. Точки прерывания отладчика сохраняются только на время работы отладчика. После завершения работы программы и повторном ее запуске, точки данного типа будут отсутствовать. В остальном их поведение совпадает с поведением точки прерывания сеанса. Точки прерывания отладчика можно конвертировать в точки прерывания сеанса, нажав кнопку сохранить в панели инструментов.
В новом отладчике точку прерывания отладчика также можно сохранить как внешнюю точку прерывания (External BP), либо выбрав в меню пункт Точки прерывания- Save Debugger BPS as - External Bps , либо нажав кнопку Save as External BP на вкладке ТочкиПрерыв. Внешняя точка прерывания похожа на точку сеанса за тем исключением, что программу можно запустить в другом сеансе, а в отладку мы попадем в текущем. Такие точки, например, используется при отладке WebDynpro приложений. В этом случае приложение запускается в браузере, создавая таким образом еще один сеанс, но, если при этом перед запуском в текущем сеансе была установлена внешняя точка прерывания, то при достижении точки отладчик откроется в именно в текущем сеансе. Редактор кода в Web Dynpro автоматически в коде котроллеров вместо точек сеанса устанавливает внешние точки прерывания. Вручную внешнюю точку можно установить и снять с помощью пункта меню Утилиты-Внешние точки прерывания-Установить/удалить внешнюю точку прерывания , нажав соответствующую кнопку в панели инструментов
Читать дальше