OUTBOUND SAP 作为服务消费方,获取请求数据的MESSAGE ID如下所示:
DATA : lr_req TYPE REF TO zfi_si_interest,
ls_req TYPE zfi_mt_interest_pr1,
ls_rsp TYPE zfi_mt_interest_pro.
"调用接口
TRY.
CREATE OBJECT lr_req.
CALL METHOD lr_req->si_interest
EXPORTING
output = ls_req
IMPORTING
input = ls_rsp.
CATCH cx_sy_ref_is_initial INTO DATA(lo_initial).
CALL METHOD lo_initial->get_text
RECEIVING
result = DATA(lv_error).
CATCH cx_ai_system_fault INTO DATA(lo_fault).
CALL METHOD lo_fault->get_text
RECEIVING
result = DATA(lv_error2).
ENDTRY.
"获取SXI_MONITOR 外发消息的MESSAGE_ID
DATA: lo_protocol TYPE REF TO if_wsprotocol_message_id.
IF lv_error = '' AND lv_error2 = ''.
TRY.
lo_protocol ?= lr_req->get_protocol( if_wsprotocol=>message_id ).
DATA(lv_pi_msgid_out_raw) = lo_protocol->get_message_id( ).
CATCH cx_ai_system_fault.
ENDTRY.
ENDIF.