汪子熙头像
S/4HANA VA05 自定义列深度解析,BAdI 写完以后标准代码到底做了什么封面图

S/4HANA VA05 自定义列深度解析,BAdI 写完以后标准代码到底做了什么

在 SAP 项目里给 VA05 增加几个自定义字段,看上去像是一件很传统的 ABAP 增强工作。找到一个 BAdI,在结果结构里塞进字段,在后处理方法里给字段赋值,保存、激活,再打开 VA05 看结果。真正麻烦的地方往往出现在这些步骤都做完以后。字段明明已经定义了,为什么默认列表里看不到。字段隐藏以后,为什么相关计算似乎根本没有执行。为什么同样的代码在一个 S/4HANA 版本里工作正常,换到另一个版本以后 ALV Filter 的行为发生了变化。为什么系统里存在两个已经激活的 BAdI implementation,结果反而一个都没有执行,而且既没有 dump,也没有明显报错。

这些现象靠记住 BADI_SDOC_WRAPPER 这个名字解释不了,必须沿着 VA05 的标准程序一路往下读。

这次代码验证覆盖了两个实验系统,一个是 S/4HANA 2020,对应 SAP_BASIS 755,另一个是 S/4HANA 2023,对应 SAP_BASIS 758。从 VA05 一直追到真正执行 SELECT 和调用客户 BAdI 的位置,可以得到下面这条调用链。Pasted text

层次 标准对象
Transaction VA05 调用 report SD_SALES_DOCUMENT_VIEW,ap

转载自 CSDN-专业IT技术社区

原文链接:https://blog.csdn.net/i042416/article/details/168434596

文章来源转载

评论

评论列表

微信小程序
QQ小程序

关于作者

点赞数:0
关注数:0
粉丝:0
文章:0
关注标签:0
加入于:--