BAPI_INSPLOT_SETUSAGEDECISION
该函数只能用于做决策、计分的操作,没有针对检验批库存过账的操作,其中需要过账部分采用的是BDC。
使用背景:由MES系统发起在RFC中为检验批做完决策后需要立即过账,由于之前做检验批决策采用的是BDC效率较慢,因此改为BAPI来实现。
使用说明:传入参数为 UD_CODE:使用决策代码,PRUEFLOS:检验批编号,而I_DATA中仅仅用到检验批编号和工厂,可以对I_DATA可以优化。
PERFORM QABAPI USING UD_CODE PRUEFLOS I_DATA .
FORM QABAPI USING JC PRUEFLOS I_DATA STRUCTURE I_DATA.
DATA: LS_UD_DATA TYPE BAPI2045UD.
LS_UD_DATA-INSPLOT = I_DATA-PRUEFLOS.
LS_UD_DATA-UD_SELECTED_SET = 'ZMT0001'.
LS_UD_DATA-UD_PLANT = I_DATA-WERK.
LS_UD_DATA-UD_CODE_GROUP = 'ZMT0001'.
LS_UD_DATA-UD_CODE = JC.
CALL FUNCTION 'BAPI_INSPLOT_SETUSAGEDECISION'
EXPORTING
NUMBER = PRUEFLOS
UD_DATA = LS_UD_DATA
* LANGUAGE =
* IMPORTING
* UD_RETURN_DATA =
* STOCK_DATA =
* RETURN =
* TABLES
* SYSTEM_STATUS =
* USER_STATUS =
.
IF SY-SUBRC = 0.
* CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
** EXPORTING
** WAIT =
** IMPORTING
** RETURN =
* .
COMMIT WORK AND WAIT.
ELSE.
CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'
* IMPORTING
* RETURN =
.
ENDIF.
ENDFORM. "qabapi