VL01N 发货过账与冲销增强

作者:斌将军 约 3 分钟阅读 更新日期:2025-03-02 1 年前更新 标签:ABAP, 开发
VL01N 发货过账与冲销增强 - 封面图
VL01N 发货过账与冲销增强 - 封面图

**一、VL01N发货过账无法冲销**

**1业务场景**

SD和EWM在使用BAPI:BAPI_OUTB_DELIVERY_CONFIRM_DEC发货过账后,发现外向交货单无法被冲销,

后来发现是在发货过账后,有一个字段VLSTK声明仓库被维护上了C,所以无法冲销

VL01N 发货过账与冲销增强 - 封面图
VL01N 发货过账与冲销增强 - 封面图

经过查找,需要做个增强,在外向交货单过账时,去掉这个参数。

## 2.1增强点

BADI:LE_SHP_DELIVERY_PROC

修改下边的接口:CHANGE_DELIVERY_HEADER

VL01N 发货过账与冲销增强 - 封面图
VL01N 发货过账与冲销增强 - 封面图

因为EWM还有8开头的外向交货单是需要C的,而EWM和SD的4开头的外向交货单是不需要C的,因为做了限制,并且清理声明仓库字段即可

VL01N 发货过账与冲销增强 - 封面图
VL01N 发货过账与冲销增强 - 封面图

**

**

**二、交货单发货过账增强**

**1业务场景**

VL02N交货单点击发货过账按钮时,需要判断输入的实际发货日期与当前系统日期的差值,是否在配置表维护的允许差值之内。如果在误差范围内,则可以发货过账,否则报错。

VL01N 发货过账与冲销增强 - 封面图
VL01N 发货过账与冲销增强 - 封面图

1\. BADI:LE_SHP_DELIVERY_PROC

之前使用FILL_DELIVERY_ITEM这个方法,发现报错后,前台所有输入框全部灰掉,无法再次输入,点击返回直接退出事务码,因此该增强位置并不合适。

后来找到增强位置为DELIVERY_FINAL_CHECK,可以实现该业务需求。当不满足条件报E类型错时,重新敲回车,则仍然进入可编辑界面。

VL01N 发货过账与冲销增强 - 封面图
VL01N 发货过账与冲销增强 - 封面图
斌将军

关于作者:斌将军

企业信息化与 SAP 技术顾问,长期专注 SAP ABAP、FI/CO、MM、SD 等模块的技术分享与实战经验总结。查看更多介绍

来源说明:本文内容由「VL01N发货过账与冲销增强.md」整理生成,仅用于内部技术分享与学习交流。