[ERP-системы] BREAK-POINT ID в помощь ABAP-разработчику

Автор Сообщение
news_bot ®

Стаж: 6 лет 9 месяцев
Сообщений: 27286

Создавать темы news_bot ® написал(а)
03-Сен-2020 17:36

Использование операторов break и break-point в ABAP разработке считается моветоном. Оператор break-point id — совсем другое дело. Он полезен, и в этом посте вы узнаете, для чего его можно использовать.
Что делает
Оператор ставит группу контрольных точек. Активировать конкретную группу может любой пользователь консультант в транзакции SAAB, ограничив максимальный срок действия активации. При достижении break-point id с активной группой для этого консультанта будет запущен отладчик.
Как может быть использован
Одна группа точек может ставиться в объектах, относящихся по смыслу к одному функционалу или проекту. Это может быть какая-нибудь подсистема или реализация cервиса. В этом случае название группы должно описывать смысл или содержать аббревиатуру/название подсистемы:
  • Стандартные группы точек:
    • cpe_formula_evaluation, cpe_formula_check, cpe_failing_quot_forecast — расчет формул и проверки в прайсинге;
    • alv_grid, salv_bs — формирование alv grid-ов.
  • Клиентские группы точек:
    • zabap_edo — внедрение электронного документооборота;
    • zabap_odata — реализация odata сервиса.

break-point id может ставиться внутри функционала, который вызывается через настройку или удаленные вызовы. Такие программные модули не имеют явного места вызова и название группы может пояснять принцип вызова. Активация контрольных точек может облегчить поиск z-функционала, вызываемого в процессе работы стандартной транзакции или при работе веб-сервиса.
Пример:
  • zabap_pc_open_fi, z_bf_open_fi — контрольные точки для обработки событий open-fi / BTE;
  • zabap_bp_bdt — точки остановки для расширения транзакции BP через BDT;
  • zabap_hr_padru — точки для дебага расширений форм в hr;

Удобно иметь универсальные группы контрольных точек, когда для отдельного типа расширения стандарта создается своя группа. В названии такой группы должен быть указан тип расширения:
  • zabap_badi — реализации BADI;
  • zabap_exit — user-exit-ы;
  • zabap_enh — реализация явных и неявных расширений.

Так как во время отладки нельзя временно отключить активные группы, в некоторых случаях стоит предусмотреть их программное отключение. Например, так:
STATICS sv_break_off  TYPE flag.
  " Если вам больше не требуется остановка в этом месте,
  " установите значение переменной sv_break_off = ‘X’.
  IF sv_break_off = abap_false.
    BREAK-POINT ID zabap_exit.
  ENDIF.

break-point id — это простой и удобный инструмент, позволяющий сократить время, затрачиваемое на поддержку кода. Как с любым инструментом, им главное не злоупотреблять. Чем лучше вы определите правила его использования, тем эффективнее он будет. Что делать, если вы его не используете, а в системе уже много расширений, в которых он мог бы пригодиться? Ввести его в свой арсенал и использовать во всех новых разработках, а в старых добавлять его тогда, когда в них вносятся корректировки.
===========
Источник:
habr.com
===========

Похожие новости: Теги для поиска: #_erpsistemy (ERP-системы), #_sap_abap, #_erpsistemy (
ERP-системы
)
Профиль  ЛС 
Показать сообщения:     

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы

Текущее время: 22-Ноя 20:21
Часовой пояс: UTC + 5