1月24日
REPORT zctest02.
TABLES balhdr.
DATA: it_handle TYPE bal_t_logh.
SELECT-OPTIONS s_num FOR balhdr-lognumber OBLIGATORY.
SELECT log_handle
INTO TABLE it_handle
FROM balhdr
WHERE lognumber IN s_num.
IF sy-subrc <> 0.
MESSAGE 'HAVE NO SUCH NUMBER!' TYPE 'S' DISPLAY LIKE 'E'.
EXIT.
ENDIF.
CALL FUNCTION 'BAL_DB_DELETE'
EXPORTING
i_t_log_handle = it_handle
EXCEPTIONS
no_logs_specified = 1
OTHERS = 2.
IF sy-subrc = 0.
MESSAGE 'DELETED SUCCESSFULLY!' TYPE 'S'.
ELSE.
MESSAGE ID sy-msgid TYPE 'S' NUMBER sy-msgno DISPLAY LIKE 'E'
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
T-CODE:
SLG0 创建对象
SLG1 察看日志
REPORT zctest01.
DATA: wa_log TYPE bal_s_log,
wa_msg TYPE bal_s_msg.
wa_log-object = 'ZCTEST01'.
wa_log-alprog = sy-cprog.
CALL FUNCTION 'BAL_LOG_CREATE'
EXPORTING
i_s_log = wa_log
EXCEPTIONS
log_header_inconsistent = 1
OTHERS = 2.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
wa_msg-msgty = 'E'.
wa_msg-msgid = '00'.
wa_msg-msgno = '001'.
wa_msg-msgv1 = 'MSGV1'.
wa_msg-msgv2 = 'MSGV2'.
wa_msg-msgv3 = 'MSGV3'.
wa_msg-msgv4 = 'MSGV4'.
CALL FUNCTION 'BAL_LOG_MSG_ADD'
EXPORTING
i_s_msg = wa_msg
EXCEPTIONS
log_not_found = 1
msg_inconsistent = 2
log_is_full = 3
OTHERS = 4.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
wa_msg-msgty = 'S'.
wa_msg-msgid = '00'.
wa_msg-msgno = '001'.
wa_msg-msgv1 = 'AA'.
wa_msg-msgv2 = 'BB'.
wa_msg-msgv3 = 'CC'.
wa_msg-msgv4 = 'DD'.
CALL FUNCTION 'BAL_LOG_MSG_ADD'
EXPORTING
i_s_msg = wa_msg
EXCEPTIONS
log_not_found = 1
msg_inconsistent = 2
log_is_full = 3
OTHERS = 4.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
CALL FUNCTION 'BAL_DB_SAVE'
EXPORTING
i_save_all = 'X'
EXCEPTIONS
log_not_found = 1
save_not_allowed = 2
numbering_error = 3
OTHERS = 4.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.