通过 bapi 更新交货数量

Posted

技术标签:

【中文标题】通过 bapi 更新交货数量【英文标题】:Update delivery quantity via bapi 【发布时间】:2016-08-29 21:23:00 【问题描述】:

在我的业务场景中,WMS 系统发布交货 GI 并将信息发送到 SAP。

如果 WMS 为整个数量发布 GI ==> 没问题 如果 WMS 为数量 发布 GI 问题。 我应该更新交货数量 (LIPS-LFIMG),然后发布 GI。 我尝试使用 WS_DELIVERY_UPDATE 和 BAPI_OUTB_DELIVERY_CHANGE 均未成功。

你遇到过这种情况吗?

【问题讨论】:

您是否在 WS_DELIVERY_UPDATE 中设置了 UPDATE_PICKING?根据您的拣货流程设置方式,如果您想更改数量,您需要为 UPDATE_PICKING 提供空格或“X”。如果您希望将更改提交到数据库,COMMIT 也必须是“X”。 嗨,Dirk,我的问题不在于拣货 (LIPS-PKIMG),而在于交付数量 (LIPS-LFIMG)。 IIRC WS_DELIVERY_UPDATE 和 WS_DELIVERY_UPDATE2 是非常好的模块,但 SAP 并未正式发布供使用。至少 4 年前就是这种情况。他们的意图非常好,但我认为,实现不完整/错误。 【参考方案1】:

我通过调用 BAPI_OUTB_DELIVERY_CHANGE 解决了这个问题 具有以下映射:

LS_HEADER_DATA-DELIV_NUMB = <FS_LIPS>-VBELN.
LS_HEADER_CONTROL-DELIV_NUMB = <FS_LIPS>-VBELN.
LV_DELIVERY = <FS_LIPS>-VBELN.
LS_ITEM_DATA-DELIV_NUMB = <FS_LIPS>-VBELN.
LS_ITEM_DATA-DELIV_ITEM = <FS_LIPS>-POSNR.
LS_ITEM_DATA-MATERIAL = <FS_LIPS>-MATNR.
LS_ITEM_DATA-BATCH = <FS_LIPS>-CHARG.
LS_ITEM_DATA-DLV_QTY = LS_VBPOK_TAB-PIKMG. ==> new quantity
LS_ITEM_DATA-DLV_QTY_IMUNIT = LS_VBPOK_TAB-PIKMG. ==> new quantity
LS_ITEM_DATA-FACT_UNIT_NOM = <FS_LIPS>-UMVKZ.
LS_ITEM_DATA-FACT_UNIT_DENOM = <FS_LIPS>-UMVKN.
LS_ITEM_DATA-CONV_FACT = <FS_LIPS>-UMREF.
LS_ITEM_DATA-GROSS_WT = <FS_LIPS>-BRGEW.
LS_ITEM_DATA-NET_WEIGHT = <FS_LIPS>-NTGEW.
LS_ITEM_DATA-UNIT_OF_WT = <FS_LIPS>-GEWEI.
LS_ITEM_DATA-VOLUMEUNIT = <FS_LIPS>-VOLEH.
LS_ITEM_DATA-SALES_UNIT = <FS_LIPS>-VRKME.
LS_ITEM_DATA-BASE_UOM = <FS_LIPS>-MEINS.
LS_ITEM_DATA-STOCK_TYPE = <FS_LIPS>-INSMK.
LS_ITEM_DATA-VAL_TYPE = <FS_LIPS>-BWTAR.
LS_ITEM_DATA-INSPLOT = <FS_LIPS>-QPLOS.
LS_ITEM_DATA-VOLUME = <FS_LIPS>-VOLUM.

APPEND LS_ITEM_DATA TO LT_ITEM_DATA.

LS_ITEM_CONTROL-DELIV_NUMB = <FS_LIPS>-VBELN.
LS_ITEM_CONTROL-DELIV_ITEM = <FS_LIPS>-POSNR.
LS_ITEM_CONTROL-CHG_DELQTY = 'X'.

APPEND LS_ITEM_CONTROL TO LT_ITEM_CONTROL.

【讨论】:

以上是关于通过 bapi 更新交货数量的主要内容,如果未能解决你的问题,请参考以下文章

交货单批次拆分

交货单BAPI_OUTB_DELIVERY_CHANGE附加增强字段

ABAP更新交货单交货数量和拣配数量

ABAP更新交货单交货数量和拣配数量

SAP BAPI创建交货单拆单原因调查

◆◆0[BAPI]外向交货单按批次拆分[BAPI_OUTB_DELIVERY_CHANGE]