Введение в OpenEdge Debugger
Настройка среды отладкиРазблокирование функции отладки
Функции отладки не доступны по-умолчанию. В среде OpenEdge их потребуется принудительно установить, выполнив следующее.
Закройте OpenEdge Architect.
Выберите из меню Start опции Progress->OpenEdge->Proenv.
В командной строке Proenv наберите “prodebugenable –enable-all”. Нажмите клавишу Enter. В OpenEdge станут доступными функции отладки.
Наберите “exit” и нажмите Enter для закрытия среды Proenv.
Откройте снова OpenEdge Architect. Если потребовалось объявить рабочую область Workspace, оставьте значение по умолчанию и нажмите кнопку OK. Сохранение и генерация R-кода
R-код – это компилированный файл ABL программы, он должен быть доступным для Debugger до начала процесса отладки. Каждый раз при сохранении программы Architect автоматически выстраивает R-код файл для нее. Следующие шаги описывают как установить эту опцию и сгенерировать r-код для файлов проекта, которые уже созданы и сохранены.
Чтобы сделать доступной опцию R-code Save/Reference Tracking, выберите Project >Properties Main Menu. В окне свойств Properties слева перейдите на OpenEdge, справа – на вкладку Build. Отметьте опцию Save r-code, нажмите кнопку OK.
Для создания r-кода для уже существующей программы, кликните правой кнопкой мыши по пункту myFirstProject в окне Resources и выберите OpenEdge -> Compile.
По окончании компиляции сформируется список сообщений в окне Console указывающий на обработанные программы. Проигнорируйте ошибки, которые могли возникнуть в процессе компиляции, так как необходимо прежде завершить процесс написания кода для некоторых программ проекта.
Отладка ABL приложенияИспользование отладчика Debugger
Для проверки функций Architect Debugger на примере программы myCustom.p выполните следующее.
Программа myCustom.p все еще должна быть открыта в редакторе OpenEdge Editor. В ином случае, кликните дважды по myCustom.p ниже пункта myFirstProject в окне Resources.
Правой кнопкой мыши кликните по Overview Ruler и выберите опцию Show Line Numbers. Это упростит нахождение кода при отладке.
Кликните дважды по Overview Ruler, чтобы переместить точки прерывания на линии 31 и 32 как указано ниже. Убедитесь, чтобы синтаксис линий на рисунке совпадал с вашим. Иначе, запустите маркеры, начиная с кода “cFullName = concatStrings”.
Нажмите кнопку Debug в главном меню.
Откроется окно OpenEdge Debugging и начнется исполнение программы.
В окне Variables вы увидите переменную myChar с пустым текущим значением.
Перейдите к окну Buffer. Обратите внимание, что буфер Customer был сформирован, ссылаясь на буфер, использовавшийся в операторе For Each на линии 30.
Перейдите на вкладку Breakpoints. Вы увидите две контрольные точки, определенные в списке.
Вернитесь на вкладку Variables.
Нажмите кнопку Continue в главном меню.
Во вкладке Variables появилось значение для myChar.
Нажмите кнопку Continue. Подкрашенная строка отладки - зеленый цвет линии 32 – указывает на последнюю линию, обработанную отладчиком. Результат применения оператора Display в линии 32 отразился в окне приложения Progress.
Нажмите кнопку Continue. Отладчик продолжит исполнение и завершит For Each блок. Он переместит подкрашенную строку на свободное место над кодом, выше оператора For Each, показывая, что процесс стартует сначала. Зеленый маркер подсвечивает линию 29 и указывает на начало отлаженного цикла.
Кликните дважды по кнопке Step Into.
Это позволит вам перейти к коду функции concatString. Проверьте, что в окне Stack отображаемая функция concatString является следующей по списку.
Перейдите во вкладку Parameters. Вы увидите два значения параметра, которые были переданы функции concatString.
Вернитесь в окно Variables.
Нажмите клавишу Step Out для выхода из кода функции.
Убедитесь, что в результате действия функции, значение переменной myChar изменилось на ожидаемое.
Нажмите дважды кнопку Stop для остановки процесса отладки и очищения окна Results.
Закройте окно OpenEdge Debugging.
Закройте файл myCustom.p.
|