以前有人在调试器上遇到过这种情况吗

2020-09-03 03:15发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我一直在调试例程,遇到了很奇怪的事情。

代码中有一个变量W_ACTIVE,它定义为CHAR1

有一段疯狂的代码指出(不知道开发者为什么这样做);

W_ACTIVE ='X'。

如果W_ACTIVE ='X'。

"这里有些逻辑

有点疯狂,因为W_ACTIVE始终是X。代码在F5上没有问题,IF语句为真(上面的行将W_ACTIVE设置为X时不可能如此)

但是,如果我双击W_ACTIVE,则在快速变量显示中它显示为Blank(十六进制2000)!

我已经在GUI 7.4和GUI 7.5(如果是GUI中的错误的情况下)上进行了尝试。

任何人以前都看过它或有任何解释吗?

欢呼

(52.3 kB)

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我一直在调试例程,遇到了很奇怪的事情。

代码中有一个变量W_ACTIVE,它定义为CHAR1

有一段疯狂的代码指出(不知道开发者为什么这样做);

W_ACTIVE ='X'。

如果W_ACTIVE ='X'。

"这里有些逻辑

有点疯狂,因为W_ACTIVE始终是X。代码在F5上没有问题,IF语句为真(上面的行将W_ACTIVE设置为X时不可能如此)

但是,如果我双击W_ACTIVE,则在快速变量显示中它显示为Blank(十六进制2000)!

我已经在GUI 7.4和GUI 7.5(如果是GUI中的错误的情况下)上进行了尝试。

任何人以前都看过它或有任何解释吗?

欢呼

(52.3 kB)
付费偷看设置
发送
7条回答
xfwsx85
1楼-- · 2020-09-03 03:48

如果您已经在IF检查之后执行了LOOP,则可能在以下一些代码中清除w_active的值。

建议:在调试和/或检查sy-tabix值时在字段上创建观察点。

 w_active ='X'。
   如果w_active ='X'。
     环视xvbap。
       " ...
       清除w_active。
       " ...
     结局。
     " ...
   万一。
 
lukcy2020
2楼-- · 2020-09-03 03:40

可能是一个错误,因为W_ACTIVE既是局部变量又是全局变量(或参数之类的东西),并且调试器显示的是全局变量而不是局部变量?

# p#

嗨,

代码是否已激活? 我有类似的地方,调试器中显示的代码不是活动的代码。

亲切的问候,Rob Dielemans

代楠1984
3楼-- · 2020-09-03 04:03

嗨,桑德拉,

在代码中多次声明了W_ACTIVE,但始终以绝对不会作为全局变量的形式声明

因此,作用域应该像对待所有其他变量一样保护它。

软件心理学工程师
4楼-- · 2020-09-03 03:52

雷蒙德,

我根本没有讲逻辑。

在执行W_ACTIVE ='X'语句后,变量快速显示中W_ACTIVE的内容为空白。

但是IF语句可以按预期工作。 只需运行这两行,别无其他。

这是显示不正确值的快速显示。

葫芦娃快救爷爷
5楼-- · 2020-09-03 03:39

在最新版本中,您可以将字段名称放在左侧的某些标签中,也可以放在"本地"和"全局"中 标签,您尝试过吗?

梦想连接
6楼-- · 2020-09-03 03:48

嗨,詹姆斯,

我会在SAP市场上提出一个错误,让SAP登录到您的系统并查看该位置

亲切的问候,罗伯·迪勒曼斯

一周热门 更多>