Использование класса CL_ILM_LOG для логирования.
Пример.
try .
data(lo_log) = new cl_ilm_log(
im_object = 'ZOBJ'
im_subobject = 'ZSUBOBJ' ).
catch cx_ilm.
return.
endtry.
" Очистить лог
lo_log->remove_mes_from_heap( ).
" Добавить системное сообщение
message s001(bc) with 'USERNAME' into sy-lisel.
lo_log->add_message( im_problemclass = space ).
" Добавить сообщение с произвольным текстом
lo_log->add_message_free_text(
im_text = 'Text to Be Displayed.'
im_msg_type = 'E'
im_problemclass = '' ).
" Добавить сообщение из exception
try.
data(lv_res) = 1 / 0.
catch cx_root into data(lx_error).
lo_log->add_exception( im_exception = lx_error ).
endtry.
" Добавить сообщение из структуры BAPIRET2
" lo_log->add_bapi_return( im_bapireturn = value #( ) ).
if lo_log->entries_in_log( )-msg_cnt_al > 0.
" Сохранить
" lo_log->save_to_db( ).
" Показать на весь экран
" lo_log->show_log_fullscreen( ).
" Показать в модальном окне
lo_log->show_popup( ).
endif.
Комментариев нет:
Отправить комментарий