SAP FICO资产主数据创建接口
一、接口逻辑



二、接口代码










FUNCTION Z_FMFICO_CREATE_ASSET.
*"----------------------------------------------------------------------
*"*"本地接口:
*" IMPORTING
*" VALUE(I_DATA_GD) TYPE ZSBC_IF_GD OPTIONAL
*" VALUE(I_INPUT) TYPE STRING OPTIONAL
*" EXPORTING
*" VALUE(E_OUTPUT) TYPE STRING
*"----------------------------------------------------------------------
DATA: GV_INPUT TYPE ZSFI003_INPUT,
GV_OUTPUT TYPE ZSFI003_OUTPUT.
DATA: GS_DEP_AREAS TYPE ZSFI003_DEP_AREAS,
GL_DEP_AREAS TYPE ZTTFI003_DEP_AREAS.
DATA: GS_KEY LIKE BAPI1022_KEY,
GS_GENERALDATA LIKE BAPI1022_FEGLG001,
GS_GENERALDATAX LIKE BAPI1022_FEGLG001X,
GS_TIMEDEPENDENTDATA LIKE BAPI1022_FEGLG003,
GS_TIMEDEPENDENTDATAX LIKE BAPI1022_FEGLG003X,
*--------------------------------添加库存字段-ZHANGYJ2022.6.6
GS_ALLOCATIONS LIKE BAPI1022_FEGLG004,
GS_ALLOCATIONSX LIKE BAPI1022_FEGLG004X,
GS_INVENTORY LIKE BAPI1022_FEGLG011,
GS_INVENTORYX LIKE BAPI1022_FEGLG011X,
*--------------------------------添加库存字段-ZHANGYJ2022.6.6
GT_DEPRECIATIONAREAS LIKE TABLE OF BAPI1022_DEP_AREAS WITH HEADER LINE,
GT_DEPRECIATIONAREASX LIKE TABLE OF BAPI1022_DEP_AREASX WITH HEADER LINE,
GS_ASSETCREATED LIKE BAPI1022_REFERENCE,
GS_RETURN LIKE BAPIRET2.
CALL FUNCTION 'ZFM_BREAK_POINT' .
CLEAR: E_OUTPUT.
CALL FUNCTION 'Z_FMBC_JSONTOABAP'
EXPORTING
I_JSON = I_INPUT
IMPORTING
E_DATA = GV_INPUT.
IF GV_INPUT IS INITIAL.
PERFORM FRM_SET_MSG TABLES GV_OUTPUT-MESSAGELIST
USING 'E' '00' '001'
'请检查JSON结构与SAP ABAP结构 是否一致!'.
PERFORM FRM_SAVE_LOG USING I_DATA_GD
GV_INPUT
GV_OUTPUT
I_INPUT
E_OUTPUT
'E'.
EXIT.
ENDIF.
"数据校验 & 输入
IF GV_INPUT-BUKRS IS INITIAL.
PERFORM FRM_SET_MSG TABLES GV_OUTPUT-MESSAGELIST
USING 'E' '00' '001'
'公司代码不可以为空!'.
PERFORM FRM_SAVE_LOG USING I_DATA_GD
GV_INPUT
GV_OUTPUT
I_INPUT
E_OUTPUT
'E'.
EXIT.
ELSE.
GS_KEY-COMPANYCODE = GV_INPUT-BUKRS.
ENDIF.
IF GV_INP
