SAP ERP Education - Отладчик (Debagging) в SAP ERP (S/4HANA) для блондинок стр 2.

Шрифт
Фон

Управление шагом отладки

Минимальным шагом отладки является один оператор языка программирования (в нашем случае это ABAP). Следует сразу отметить, что различные математические операции не относятся к операторам это составляющие выражения. А вот знак =, например, это именно оператор оператор присвоения значения выражения, стоящего справа от него, переменной слева от него. Ключевые слова для объявления переменных и типов также не относятся к операторам. Таким образом, если мы дадим с помощью отладчика команду выполнить минимальный шаг, программа выполнит текущий оператор, перейдет к следующему и остановится. При этом мы снова окажемся в отладчике. Если какие-либо данные были изменены во время шага, отладчик покажет нам их текущие значения. Большинство необходимых команд отладчика присвоены горячим клавишам так выполнение отдельного шага назначено на клавишу F5. Кроме того, эту команду можно выполнить, выбрав соответствующий пункт меню Отладчик-Отдельный шаг (в старом отладчике Отладка-Управление-Отдельный шаг) или нажав кнопку

на панели инструментов.

Теперь представим ситуацию, что в процессе отладки мы остановились на операторе вызова подпрограммы, функции, метода или чего-то похожего (назовем это все «подпрограммой»). Если дать команду выполнить отдельный шаг, управление будет передано внутрь вызываемой подпрограммы и вам придется проходить ее всю также по шагам. Если Вы уверены что то, что происходит внутри подпрограммы не вызывает ошибки, которую вы ищете, или просто в данный момент Вам не интересно, то всю подпрограмму можно выполнить за 1 шаг. Для этого предназначена соответствующая команда «Выполнить», назначенная на клавишу F6. Эту команду можно давать и при выполнении обычных операторов, в этом случае ее действие совпадает с выполнением команды отдельного шага по F5. В меню она находится в том же подразделе, что и команда «Отдельный шаг», а кнопка для нее выглядит так .

Чтобы объяснить следующую команду отладки, стоит поговорить про стек вызовов. Стеком называется хранилище неких сущностей, из которого сущности могут быть извлечены в порядке обратном их помещению в стек. Если вы когда-нибудь слышали про LIFO это и есть стек.

Стеком вызовов называется цепочка вызовов подпрограмм, которые привели нас в текущее место программы. При этом на вершине стека располагается текущая выполняемая подпрограмма, а на его дне то место, откуда началось выполнение. При вызове подпрограммы она помещается на вершину стека и становится текущей. При выходе из текущей подпрограммы она удаляется из стека и на вершине оказывается та подпрограмма, из которой была вызвана текущая, и, таким образом, сама становится текущей.

Для нас сейчас важно, что мы можем дать команду выполнить текущую подпрограмму до конца и выйти из нее. При этом программа остановится, и мы окажемся в отладчике на операторе, следующем за вызовом той подпрограммы, из которой мы вышли. Такая команда называется «Возврат» и назначена на клавишу F7 (и также присутствует в меню и панели инструментов). Очень полезно если вы случайно провалились в подпрограмму по F5, поняли, что хотели нажать F6 и Вам тут не интересно, и хотите вернуться. Кнопка для этой команды выглядит так .

Следующая команда «Дальше» сама простая она запускает программу с текущего места в обычном режиме. Программа остановится только в точке прерывания, о типах которой поговорим ниже, либо отработает полностью и завершится. Команда назначена на клавишу F8. В классическом (старом) отладчике эта команда объединена со следующей. Кнопка выглядит следующим образом .

Команда «Выполнить до курсора»  запускает программу и заставляет ее остановиться в месте, на котором установлен курсор. Если курсор установлен не в текущей подпрограмме или выше текущей команды поведение аналогично команде «Дальше». В новом отладчике команда назначена на сочетание клавиш Shift+F8. В классическом отладчике, эта команда объединена с предыдущей при ее вызове, если в процессе выполнения программы будет достигнуто место, на котором установлен курсор, программа остановится, и вы окажетесь в отладчике. Иначе программа будет выполнена до конца или до точки прерывания.

Ваша оценка очень важна

0
Шрифт
Фон

Помогите Вашим друзьям узнать о библиотеке

Скачать книгу

Если нет возможности читать онлайн, скачайте книгу файлом для электронной книжки и читайте офлайн.

fb2.zip txt txt.zip rtf.zip a4.pdf a6.pdf mobi.prc epub ios.epub fb3