无法在内联声明中使用该变量

2020-08-25 02:21发布

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

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


我正在尝试编写像这样的简单代码

在my_lines循环
      引用到数据(o_line)。
   数据(my_summ)= o_line-> my_quantity + my_sum。
 结束循环。

(目的不是简单地求和,这只是一个例子)

但是,我遇到了一个错误" my_sum未知"

内联声明的真正限制吗?

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

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


我正在尝试编写像这样的简单代码

在my_lines循环
      引用到数据(o_line)。
   数据(my_summ)= o_line-> my_quantity + my_sum。
 结束循环。

(目的不是简单地求和,这只是一个例子)

但是,我遇到了一个错误" my_sum未知"

内联声明的真正限制吗?

付费偷看设置
发送
5条回答
huskylover
1楼 · 2020-08-25 03:05.采纳回答

似乎不可能,请查看霍斯特·凯勒

https://blogs.sap.com/2013/05/23/abap-news-for-release-740-inline-declarations/#comment-349626

我无法理解标准帮助术语,但我认为他们正在谈论

https://help.sap.com/doc/abapdocu_752_index_htm/7.52/zh-CN/index.htm?file=abendata_inline.htm

就像语句DATA一样,内联声明不会打开本地 当前语句块的上下文。 变量的内联声明只能在上下文中进行一次,并且尚不能使用DATA在那里声明该变量。

是否一样? 该语句对我来说非常令人困惑:D

谢谢,
马哈什

nice_wp
2楼-- · 2020-08-25 02:44

您的代码中有错字(my_summ-> my_sum)。

除了分两个步骤进行操作外,没有其他选择:

 data(my_sum)= 0。
 在my_lines循环
      引用到数据(o_line)。
   my_sum = o_line-> my_quantity + my_sum。
 结束循环。
梦想连接
3楼-- · 2020-08-25 03:08

Sandra Rossi ,是的,我就是这么做的。 但是...我不知道为什么,但是我不想再使用DATA ...了。 我尽量避免使用它。

骆驼绵羊
4楼-- · 2020-08-25 03:00

但是您没有使用DATA。 您正在使用数据(my_sum)= 0。

callcenter油条
5楼-- · 2020-08-25 02:48

感谢 Sandra Rossi Frederic Girod 的解释,即使在其他语言(例如javascript)中也无法实现, 因为LHS类型取决于RHS类型是有意义的,但是它将基于RHS总值类型,在这种情况下,它将是

data(dyn_variable)=(某些值)+ (dyn_variable(with undefined type))=>所以出现错误。

一周热门 更多>