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

Отладчик (Debagging) в SAP ERP (S/4HANA) для блондинок
Название: Отладчик (Debagging) в SAP ERP (S/4HANA) для блондинок
Автор:
Жанры: Программы | Программирование | Базы данных
Серии: Нет данных
ISBN: Нет данных
Год: 2021
О чем книга "Отладчик (Debagging) в SAP ERP (S/4HANA) для блондинок"

Благодаря этой книге вы узнаете:

1) Как пользоваться отладчиком в системе SAP ERP и S/4HANA.

2) Анализировать логику работы программ написанных на языке программирования ABAP, почему они работают так, а не иначе.

3) Понимать причины дампов/ошибок в программах.

4) Выполнять контроль качества реализации функциональной спецификации разработчиком.

5) Анализировать логику работы функциональных модулей и USER-EXIT, т.е. одним словом общаться на одном языке с разработчиком. Мы понимаем, что самый ценный ресурс консультанта SAP – это время, поэтому попытались изложить все самое необходимое, чтобы Вы смогли общаться с отладчиком на "ТЫ", избегая глубокого погружения в технические детали.

6) Уменьшится потребность в разработчиках по мелким техническим вопросам, что сохранит не только время, но и ваши нервы, а как мы с вами знаем, все болезни от нервов. Будьте здоровы и больше времени проводите со своими близкими.

Бесплатно читать онлайн Отладчик (Debagging) в SAP ERP (S/4HANA) для блондинок


Введение

В начале немного скучной теории…

Аксиома: В программах и в данных бывают ошибки

Ошибки могут проявляться по-разному, в зависимости от того, предугадал и предусмотрел ли разработчик возможность появления ошибки в данном месте программы. Программа может аварийно завершиться («упасть в дамп»), может выдать сообщение об ошибке или лог ошибок. А может тихо и незаметно испортить Вам данные. Или наоборот – ничего не делать, хотя должна.

Как только Вы заметили проявление ошибки, необходимо выяснить и устранить ее причину. Иногда о причине ошибки говорит сообщение, которое выводится на экран. В этом случае ошибку можно исправить, изменив исходные данные или настройки. Но очень часто сообщения либо нет, либо оно не информативное. В этом случае необходимо найти место в программе (а иногда и саму программу), в котором возникает ошибка.

Если произошло аварийное завершение, то в транзакции ST22 мы можем увидеть наш «дамп», в котором есть информация, как о месте возникновения ошибки, так и о значениях переменных в момент ошибки. Иногда этой информации достаточно, чтобы понять, почему она произошла. Но зачастую этого мало – тогда нам на помощь приходит отладка.

Если у нас есть сообщение с классом и номером сообщения (обычно их можно найти в переменных SY-MSGID, SY-MSGNO), то в транзакции SE91 можно попробовать найти места в программах, где это сообщение выводится. Иногда можно перейти в это место посмотреть на код и понять, почему возникла ошибка. Но часто таких место очень много. Или они не найдены – такое возможно потому, что ошибки могут генерироваться разными способами с динамическим формированием номера сообщения. В этих случаях также нужна отладка. Наконец, отладка нужна в том случае, если место возникновения ошибки неочевидно или известно только приблизительно.

Что представляет собой отладка программы

Чтобы ответить на этот вопрос, нужно в первую очередь понять, что компьютеры работают очень быстро. Гораздо быстрее мозга любого человека. Это позволяет им совершать ошибки с очень большой скоростью. Применительно к вопросу поиска причин ошибки это является негативным фактором, так как человек не в состоянии отслеживать состояние программы со скоростью компьютера.

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

После анализа текущего состояния человек дает команду на выполнение следующей инструкции программы. Инструкция выполняется, и программа снова останавливается в ожидании дальнейших указаний. Таким образом можно выполнить всю программу. Этот процесс и называется ОТЛАДКОЙ.

Все операции по отладке осуществляются в специальной программе – отладчике. То есть отладчик – это программа для отладки других программ. На данный момент в SAP существуют два отладчика – новый и классический (старый). Они отличаются интерфейсом и возможностями. Об этом мы поговорим позже в соответствующем разделе.

Отладчик показывает исходный код программы и текущее место в нем, на котором программа остановлена. Текущее место отображается в отладчике стрелкой – желтой в новом отладчике и синей в старом. Также он позволяет управлять дальнейшим ходом выполнения программы и отображать всю информацию, указанную выше. В отладчике можно пройти по шагам всю программу, анализируя логику ее работы и сверяя ее с той, которая должна была бы быть. Плохая новость в том, что программы могут быть очень большими и проходить их по шагам, останавливаясь после каждого оператора, быстро надоест. Хорошая новость заключается в том, что уже придуманы способы обхода данной неприятности и встроены в отладчик.

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

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

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

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

.

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

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


С этой книгой читают
Данная книга – своеобразная «скорая помощь» для новичков, которым нужно быстро разобраться с возможностями новой версии текстового процессора Mirosoft Word 2007. Кроме того, это полезное пособие для более опытных пользователей – с его помощью они смогут быстрее освоить новый интерфейс программы. В книге нет слишком подробных описаний, не рассматриваются экзотические возможности приложения. Ее основная цель – помочь вам за несколько минут найти от
Мобильность – безусловно, неоспоримое преимущество ноутбука. Однако она накладывает на пользователя и определенные ограничения. Перед ним регулярно встает масса задач: оптимизация энергопотребления ноутбука, мониторинг уровня заряда аккумуляторов, регулярная настройка сетевых подключений разных типов (в том числе и таких экзотических, как GPRS и Wi-Fi), настройка различных режимов работы экрана, CD/DVD-приводов, жестких дисков…Но сегодня разработ
В этой книге рассказывается о том, что такое Интернет. Вы узнаете, где Интернет находится и как к нему подключиться, посмотрите, как настраивать модем и выбирать провайдера, визуально оцените, каковы в работе различные программы для Интернета. Эта книга расскажет и покажет, как эффективно находить нужную информацию с помощью поисковых серверов и каталогов, пользоваться электронной почтой, общаться на форумах, в чатах и в «аське». Осваивайте Интер
Эта книга поможет вам разобраться в премудростях Microsoft Excel 2007.Информационная насыщенность учебного материала позволяет утверждать, что мультимедийный курс будет интересен и новичкам, и опытным пользователям, которые уже владеют основными навыками работы в Excel и стремятся к достижению профессиональных результатов в своей работе.
Что если рядом с людьми в привычном мире обитают маги и прочие волшебные существа? Что если обычный человек не может стать магом и жениться на маге, но по воле судьбы влюбляется в незнакомку из другого мира? Что если этот человек – Избранный, хотя он сам об этом не догадывается? Ответы на эти и многие другие интригующие вопросы вы узнаете, погрузившись в волшебный мир романа «Дитя Демиургов. Путь к магии»!
Рассказы, в которых одним, или даже самым главным, героем является ЛЕС – со всеми его тайнами, красотой, мрачностью, со всем удивительным, неизведанным. Населенный существами, о которых читатель слышал, а может и нет. Может, даже и не хотел бы слышать, но лес, вот он – за порогом…
Книга популярного блогера Ангелины Потаповой (Moleccula), кандидата биологических наук, посвящена новейшим достижениях биомедицины, тому, как современные открытия в области генетики и клеточных технологий влияют на нашу жизнь и здоровье. Могут ли генетические ножницы вырезать рак? Что нужно для создания живого организма из стволовых клеток? Как приготовить коктейль молодости, используя определённые гены и клетки? Об этом и многом другом вы узнает
Велесова книга – это загадочная летопись, написанная древнеславянским языком на деревянных дощечках, найденных в начале XX века. Она повествует о более чем 2000-летней истории наших предков, об их вере и быте, о военных сражениях и великих путешествиях. В этом издании содержится как дословный перевод древнего текста, так и подробный разбор со сравнением разных научных точек зрения.Вы узнаете не только о происхождении этого знаменитого историческо