你知道在 ABAP 如何跟踪此变量的值是在哪发生了变化的吗
作者:郑德鼎
约 3 分钟阅读
更新日期:2025-03-02
1 年前更新
标签:ABAP, Data Engineering, WM, 仓库管理, 开发, 数据工程
你知道在 ABAP 如何跟踪此变量的值是在哪发生了变化的吗 - 封面图
你知道在 ABAP 如何跟踪此变量的值是在哪发生了变化的吗 - 封面图
**你** **问**
**我答**
**_问_ **
在使用ABAP Debug源程序的时候,经常碰到function或者method里使用了某个全局变量,你知道如何跟踪此变量的值是在哪发生了变化的吗?
例如下图中,function
CS_CL_S_ITM_CTRL_INFO_PROVIDE里使用了G_ITM_ADM全局内表变量。而在function里仅遍历了此变量而不做变量值修改,我们需要跟踪在调用此function之前,G_ITM_ADM的值是如何发生变化的。
你知道在 ABAP 如何跟踪此变量的值是在哪发生了变化的吗 - 封面图
**_答_ **
此问题的难点在于全局变量的引用位置可能有很多处,且变量未声明时没法通过观察点Debug。因此解决的思路是先定位到该变量已声明且未赋值的位置,再通过观察点跟踪。
所以通过Debug脚本 & 观察点可以快速实现上述跟踪需求,步骤如下:
1.确定全局变量所属的程序名。
你知道在 ABAP 如何跟踪此变量的值是在哪发生了变化的吗 - 封面图
2.在较前面的程序逻辑进入Debug脚本界面,使用程序名作为条件断点的判断依据,进入到第一次调用此程序的位置。此时该全局变量为初始值。
你知道在 ABAP 如何跟踪此变量的值是在哪发生了变化的吗 - 封面图
你知道在 ABAP 如何跟踪此变量的值是在哪发生了变化的吗 - 封面图
你知道在 ABAP 如何跟踪此变量的值是在哪发生了变化的吗 - 封面图
3.添加变量观察点跟踪变量的值变化。
你知道在 ABAP 如何跟踪此变量的值是在哪发生了变化的吗 - 封面图
你知道在 ABAP 如何跟踪此变量的值是在哪发生了变化的吗 - 封面图
**-END-**
你知道在 ABAP 如何跟踪此变量的值是在哪发生了变化的吗 - 封面图
作者:陈 哲
审核:贾栋才
编辑:朱思聪

关于作者:郑德鼎
企业信息化与 SAP 技术顾问,长期专注 SAP ABAP、FI/CO、MM、SD 等模块的技术分享与实战经验总结。查看更多介绍
来源说明:本文内容由「你知道在ABAP如何跟踪此变量的值是在哪发生了变化的吗.md」整理生成,仅用于内部技术分享与学习交流。