Журнал сообщений ABAP

Часто возникает необходимость вывода списка сообщений пользователю SAP. В журнал сообщений ABAP может выводится информация о ходе выполнения программы SAP. Так же он необходим для вывода списка ошибок, возникших в результате её выполнения. В результате разберём набор ФМ, предназначенных для вывода журнала сообщений ABAP.

Так один из вариантов реализации – это глобальная переменная в программе ABAP или атрибут класса. И в ходе выполнения программы в эту переменную сохраняются сообщения. По окончанию выполнения программы может, например, выводится журнал сообщений. Либо происходит сохранение журнала в системе SAP с дальнейшей возможностью просмотра в транзакции SLG1.

Этапы работы с журналом сообщений SAP

Создание журнала сообщений ABAP

Создание экземпляра журнала сообщений SAP происходит с использованием функционального модуля BAL_LOG_CREATE.

Добавление сообщений в журнал SAP

Добавить новые сообщения в журнал можно используя функциональный модуль BAL_LOG_MSG_ADD.

Вывод журнала сообщений на экран

Для вывода журнала сообщений ABAP на экран в виде всплывающего окна используется функциональный модуль BAL_DSP_LOG_DISPLAY.

Удаление из памяти журнала сообщений

Для удаления из памяти журнала сообщений ABAP используется функциональный модуль BAL_LOG_REFRESH. По идентификатору журнала сообщений i_log_handle он находит журнал и удаляет его из памяти.

Шаблон вывода журнала сообщений ABAP:

В коде используются конструкции:

Готово. В результате получаем на экране журнал сообщений. И в каждой строке есть индикатор в зависимости от типа сообщения с текстом. Также есть возможностью просмотреть подробности каждого сообщения. Необходимости в глобальной переменной в которой хранятся сообщения может не быть. Например, мы можем сразу создать объекта сообщений ABAP и сохранять сообщения сразу в журнал. Это подойдёт при фоновом выполнении. Так же на необходимость глобальной переменной влияет нужен полный список сообщений в конце выполнения.

Так же много интересных примеров можно найти в SBAL_DEMO*.

Добавить комментарий