前面说过,可以使用 WS_DELIVERY_UPDATE
进行外向交货单的发货过账,当然,这个可实现的很多,过账,冲销,删除都可以
但是这个不是bapi,是个函数,则会缺少bapi自带的那些校验
为了更安全,其实建议是使用 BAPI_OUTB_DELIVERY_CONFIRM_DEC
但同时遇到一个问题,就是使用BAPI_OUTB_DELIVERY_CONFIRM_DEC发货过账,不能冲销
提示啥我忘记了,好像是什么分散啥啥的
解决办法,目前知道是在增强里去清空一个字段
增强BADI:LE_SHP_DELIVERY_PROC
方法:CHANGE_DELIVERY_HEADER
清空值:CS_LIKP-VLSTK.“分配状态(分散仓库处理)
然后再调用bapi就不会冲销不掉了
L_HEADER_DATA-DELIV_NUMB = PV_VBELD.
L_HEADER_CONTROL-DELIV_NUMB = PV_VBELD.
L_HEADER_CONTROL-POST_GI_FLG = 'X'.
L_HEADER_CONTROL-VOLUME_FLG = 'X'.
"外向交货单发货过账
CALL FUNCTION ' BAPI_OUTB_DELIVERY_CONFIRM_DEC '
EXPORTING
HEADER_DATA = L_HEADER_DATA
HEADER_CONTROL = L_HEADER_CONTROL
DELIVERY = PV_VBELD
TABLES
* iT_HEADER_PARTNER =
* iT_HEADER_PARTNER_ADDR =
* iT_HEADER_DEADLINES =
* iT_ITEM_DATA =
* iT_ITEM_CONTROL =
* iT_ITEM_CODING_BLOCK =
RETURN = LT_RETURN_BAPI.
READ TABLE LT_RETURN_BA
PI TRANSPORTING NO FIELDS
WITH KEY TYPE = 'E'.