在外部调用接口时,通常会需要保存外部的调用记录,期间会用到表,这里将传入的表转换成json格式(也可以转换成XML),并存入通用日志表中。

1.SE11,新建通用的LOG表,表结构参考下图:

ABAP SAP接口通用日志存储,以及查看

 

 

 2.在接口中,如果需要保存记录,则调用下面代码。

DATA: json_ser TYPE REF TO cl_trex_json_serializer,
        json_des TYPE REF TO cl_trex_json_deserializer.
  DATA: jsonstr TYPE string.

CREATE OBJECT json_ser
    EXPORTING
      data = it_plm007[].
  CALL METHOD json_ser->serialize.
  CALL METHOD json_ser->get_data
    RECEIVING
      rval = jsonstr.

  ls_zrfc_logs-funcname   = 'Z_RFC_PLM_007'.
  ls_zrfc_logs-zsystem    = p_system.
  ls_zrfc_logs-uname      = p_uname.
  ls_zrfc_logs-zname1     = p_name1.
  ls_zrfc_logs-erdat      = sy-datum.
  ls_zrfc_logs-uzeit      = sy-uzeit.
*  ls_zrfc_logs-ep_type    = ep_type.
*  ls_zrfc_logs-ep_message = ep_message.
  ls_zrfc_logs-jsonstr1   = jsonstr.

  MODIFY zrfc_logs FROM ls_zrfc_logs.
  IF sy-subrc EQ 0.
    COMMIT WORK AND WAIT.
  ELSE.
    ROLLBACK WORK.
  ENDIF.
View Code

相关文章: