# SAP交货单删除拦截:外部系统已处理的单据,怎么不让用户乱删?
## 一、业务痛点上了WMS之后SAP和WMS两套系统并行最头疼的就是数据一致性。一张交货单已经推到WMS仓库都拣货发货了结果SAP这边有人手滑给删了。WMS数据还在SAP没了两边对账对不上事后排查半天。内向交货单也一样WMS都收货上架了SAP端还能改还能删库存直接乱套。核心问题**SAP标准功能不关心外部系统状态想删就删**。怎么让SAP删单之前先去WMS问一句处理了没处理了就不让删## 二、整体思路两个隐式增强打配合PBO打开单据 → 调WMS接口查状态 → 写入内存ID↓用户点删除 → 读内存ID → 已处理→ 拦截 提示为什么两个增强PBO阶段能拿完整数据调接口但管不了操作PAI能拦截操作但调接口又慢。分工协作各干擅长的。## 三、增强点怎么找两个增强点都在 SAPMV50A 的Include里- **PBO拉状态**Include MV50AF0B_BELEG_LESEN_SIMPLEFORM beleg_lesen_simple 里在 ENHANCEMENT-POINT mv50af0b_beleg_lesen_simple_01 SPOTS es_sapmv50a STATIC 之后。单据读取完成时触发能拿到完整的 LIKP/LIPS 数据。- **删除拦截**Include MV50AF0F_FUNKTION_AUSFUEHRENFORM funktion_ausfuehren 的最开头。功能码执行前触发能拿到当前 fcode 并修改。找增强点的思路VL02N里 /h 进调试设断点 SY-UCOMM LOESCH_TA顺着调用栈找到处理功能码的Form再看Form里有没有 ENHANCEMENT-POINT 或隐式增强点。也可以SE80看程序的增强点列表直接搜 ES_SAPMV50A 这个增强点。## 四、PBO拉状态在 beleg_lesen_simple 的增强点里先判断单据类型再查WMS处理状态结果塞到内存IDabapFORM load_ext_status USING uv_delnr TYPE vbeln_vluv_doctp TYPE vbtyp.DATA: lv_locked TYPE flag.CHECK NOT uv_delnr IS INITIAL.IF uv_doctp J. 外向交货看推送日志里有没有记录SELECT SINGLE lifex INTO DATA(lv_refno)FROM ztmm_log_001WHERE vbeln uv_delnn.IF sy-subrc 0 AND lv_refno IS NOT INITIAL.lv_locked abap_true.ENDIF.ELSEIF uv_doctp 7. 内向交货调RFC去WMS查PERFORM rfc_wms_query USING uv_delnr CHANGING lv_locked.ENDIF.EXPORT lv_locked TO MEMORY ID ZMM_DEL_LOCK_FLAG.ENDFORM.WMS那边用RFC函数去查具体实现各家不一样核心是把能不能删的布尔值带回来就行。## 五、删除拦截在 funktion_ausfuehren 最开头的增强点里先看一眼功能码是不是删除是就去内存里取状态abapFORM prevent_delete CHANGING cv_okcode TYPE sy-ucomm.DATA: lv_lock TYPE flag.CHECK cv_okcode LOESCH_TAOR cv_okcode /ELOESCH_TA.IMPORT lv_lock FROM MEMORY ID ZMM_DEL_LOCK_FLAG.CHECK sy-subrc 0.CHECK lv_lock abap_true. 关键把功能码清空等于这次操作没发生CLEAR cv_okcode.MESSAGE s004(zmm01) DISPLAY LIKE E.EXIT.ENDFORM.核心就这招 **CLEAR fcode**。SAP的PAI是靠功能码驱动的你把功能码清了标准程序就不知道该干啥了等于操作被取消。再配个 MESSAGE S ... DISPLAY LIKE ES类消息不会把程序搞死但显示出来是红色的错误样式用户一看就明白。## 六、小结两个隐式增强几十行代码就实现了跨系统的操作控制。思路很朴素**PBO拉状态存内存操作时读内存拦截**。隐式增强的好处是灵活 — 想在哪插就在哪插能拿到标准程序里的所有变量。对于这种标准功能没出口业务又必须要的场景就是最实用的选择。

相关新闻

LangChain AI执行链封装实战:从基础问答到RAG与路由链

LangChain AI执行链封装实战:从基础问答到RAG与路由链

1. 项目概述:为什么需要封装AI执行链? 如果你已经跟着这个系列走过了前面的十四天,那么恭喜你,你已经掌握了从环境搭建、模型调用到Prompt工程、记忆管理等一系列AI应用开发的核心技能。但不知道你有没有发现一个问题:…

2026/10/27 3:52:16 阅读更多 →
Linux cp命令深度解析:从文件系统原理到高级运维实战

Linux cp命令深度解析:从文件系统原理到高级运维实战

1. 从“复制粘贴”到系统运维:为什么你需要重新认识 cp 命令 在Linux世界里, cp (copy)命令可能是你学会的第一个命令之一,简单到几乎不需要思考: cp 源文件 目标文件 。很多人对它的认知停留在“复制…

2026/10/21 20:47:52 阅读更多 →
哪些相亲软件更靠谱?相亲app软件产品设计经验分享

哪些相亲软件更靠谱?相亲app软件产品设计经验分享

一、热门相亲APP深度解析:从匹配机制到用户群体在选择相亲APP时,很多人会问“相亲APP哪个靠谱”,其实核心要看匹配机制、用户审核和功能设计。以下是主流平台的详细解析: 图书与文学1. 垂直型相亲APP:LoveU相亲、青藤之…

2026/10/21 7:23:25 阅读更多 →

最新新闻

Electron桌面应用开发实战:从环境搭建到打包发布全流程

Electron桌面应用开发实战:从环境搭建到打包发布全流程

做前端这些年,我大部分时间都在跟浏览器标签页打交道,直到第一次把桌面应用跑起来,才发现原来自己一直被限制在地址栏和刷新按钮围起来的框框里。Electron这个词,最开始是在某段时间频繁出现在同事的讨论里,一个用HTML…

2026/10/26 12:00:21 阅读更多 →
滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

简介:亚太天能T109滑盖智能锁产品说明书是一份PDF格式的官方技术文档,主要面向智能锁安装人员、终端用户及售后维护者,帮助快速掌握产品安装、配置与常见故障处理。全包仅1个PDF文件,大小4.37MB,内容结构清晰&#xff…

2026/10/25 22:36:10 阅读更多 →
PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

上个月我在调试一台高速AGV的驱动系统,整车要求空载跑到8m/s,电机转速已经拉到额定点,驱动器的输出电压也顶到了母线电压极限附近。再往上踩速度指令,转速纹丝不动,三相电流反而开始震荡。那会儿我的第一反应就是&…

2026/10/26 4:52:12 阅读更多 →
C++核心知识点:从内存管理到STL的实战指南

C++核心知识点:从内存管理到STL的实战指南

C 这门语言我前前后后折腾了十几年,用它写过嵌入式驱动、做过游戏服务端,也搭过基础组件库。每次看到新人一头扎进"C 核心知识点"这个搜索词,我其实挺感慨的——这门语言的难点从来不是语法多,而是知识点之间的耦合太深…

2026/10/26 12:00:21 阅读更多 →
T109滑盖智能锁怎么装?安装调试与故障排查全攻略

T109滑盖智能锁怎么装?安装调试与故障排查全攻略

简介:亚太天能T109滑盖智能锁产品说明书以PDF格式发布,适合智能锁用户、安装人员与售后维修人员阅读。内容围绕T109系列指纹密码刷卡锁展开,先介绍前面板、后面板、锁体、机械钥匙、电池盒盖等部件名称与功能,再给出完整安装步骤&…

2026/10/26 5:00:37 阅读更多 →
LLM知识降熵:从信息垄断到理解权下放

LLM知识降熵:从信息垄断到理解权下放

你有没有过这种经历:翻开源码注释、论文摘要或者一份专业报告,每个字都认识,连在一起却像天书。想找人聊聊,身边要么没人懂,要么懂的懒得跟你解释。后来我试着把同一段内容丢给一个大语言模型,几秒钟之后&a…

2026/10/26 3:16:46 阅读更多 →

日新闻

周新闻

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/26 12:00:19 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/25 13:21:54 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/26 8:34:37 阅读更多 →