SAP MM 通用物料移动过账冲销接口分享
一、接口逻辑
二、接口代码分享
FUNCTION z_fmmm_0014.
*"----------------------------------------------------------------------
*"*"本地接口:
*" IMPORTING
*" VALUE(I_DATA_GD) TYPE ZSBC_IF_GD OPTIONAL
*" VALUE(I_INPUT) TYPE STRING OPTIONAL
*" EXPORTING
*" VALUE(E_OUTPUT) TYPE STRING
*"----------------------------------------------------------------------
DATA:ls_input TYPE zsmm_input_014,
ls_output TYPE zsmm_output_014.
DATA:lv_status TYPE c.
DATA:lt_bapi_msg TYPE TABLE OF bapiret2,
ls_docinfo TYPE bapi2017_gm_head_ret.
DATA:ls_ztmm0034 TYPE ztmm0034,
lt_ztmm0034 TYPE TABLE OF ztmm0034.
DATA:lv_num035(10) TYPE c.
DATA:lt_ztmm009 TYPE TABLE OF ztmm009,
ls_ztmm009 TYPE ztmm009.
DATA:ls_messagelist TYPE zsmm_output_014_detail,
lt_messagelist TYPE TABLE OF zsmm_output_014_detail.
"CALL FUNCTION 'ZFM_BREAK_POINT'.
CLEAR:ls_input,ls_output,lv_status,lt_bapi_msg,ls_docinfo,lv_num035.
IF i_input IS NOT INITIAL.
CALL FUNCTION 'Z_FMBC_JSONTOABAP2'
EXPORTING
i_json = i_input
IMPORTING
e_data = ls_input.
ENDIF.
IF ls_input IS INITIAL.
PERFORM frm_set_msg TABLES ls_output-messagelist[] USING 'E' '00' '001' '请检查JSON结构与SAP ABAP结构 是否一致!'.
PERFORM frm_write_log_new USING 'MM0014' ls_output i_data_gd i_input e_output 'E'.
EXIT.
ENDIF.
IF ls_input-bktxt IS INITIAL OR ls_input-bktxt EQ ''.
PERFORM frm_set_msg TABLES ls_output-messagelist[] USING 'E' '00' '001' 'WMS单据号不能为空!'.
PERFORM frm_write_log_new USING 'MM0014' ls_output i_data_gd i_input e_output 'E'.
EXIT.
ENDIF.
IF ls_input-item[] IS NOT INITIAL.
&n