无法调用引用的方法

2020-08-18 21:34发布

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

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


我不知道如何正确地提出问题,对不起。

我有一个基本的LIST类,还有一个REPORT类,report-> get_includes()返回TYPE REF TO LIST

当我尝试编译以下代码时,出现错误,提示我无法从引用调用方法。
DATA(Y)= NEW REPORT('FOO')-> GET_INCLUDES()。
DATA(Z)= Y-> GET(1)。

当我将get_includes的返回类型更改为TYPE LIST时,出现错误消息" Y不是引用变量"

因此错误表明我无法从参考变量调用,而且还必须从参考变量调用。

我希望我能正确地表达自己,如果没有,我很乐意澄清。

在此先感谢您的帮助!

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

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


我不知道如何正确地提出问题,对不起。

我有一个基本的LIST类,还有一个REPORT类,report-> get_includes()返回TYPE REF TO LIST

当我尝试编译以下代码时,出现错误,提示我无法从引用调用方法。
DATA(Y)= NEW REPORT('FOO')-> GET_INCLUDES()。
DATA(Z)= Y-> GET(1)。

当我将get_includes的返回类型更改为TYPE LIST时,出现错误消息" Y不是引用变量"

因此错误表明我无法从参考变量调用,而且还必须从参考变量调用。

我希望我能正确地表达自己,如果没有,我很乐意澄清。

在此先感谢您的帮助!

付费偷看设置
发送
5条回答
haha101010
1楼 · 2020-08-18 22:28.采纳回答

您好 Kevin Holtkamp

将您的班级名称从LIST更改为ZLIST即可。 LIST是ABAP中的一个关键字,这就是为什么您会收到错误消息。

我建议使用LCL_类命名约定。

请注意

Mateusz

编辑: Sandra Rossi

Edit2注意到了,LIST是一个数据元素: 正如 StephanKöster所正确指出的那样,主要问题是LIST类是在REPORT类之后定义的。 在类REPORT之前定义它可以激活代码。 话虽这么说,使用类命名约定将触发正确的语法检查错误,这将指向正确的问题。

派大星 ヾ
2楼-- · 2020-08-18 22:22

Kevin Holtkamp 请使用"代码"按钮发布代码,如下所示:

 CLASS报告定义。
   公共部分。
     方法:
       构造函数
         IMPORTING VALUE(name)TYPE字符串,
       get_includes
         返回值(包括)TYPE REF TO列表。
   专用部分。
     数据源类型为string_table。
 ENDCLASS。
Nan4612
3楼-- · 2020-08-18 22:08

这是因为LIST是数据元素(1个字符),而不是类。

您应该在类前面加上LCL_来避免这种情况 问题,并按正确的顺序放置声明(在您的情况下,类LIST是在TYPE REF TO列表之后定义的,因此SAP会将LIST视为数据元素)。

ZJXianG
4楼-- · 2020-08-18 22:04
< p>感谢 Sandra Rossi ,它解决了这个问题! 我必须先定义LIST。

还要感谢您和 Mateusz Adamus 在此提供的所有帮助,我很新,也没有 知道此站点的工作方式

打一壶酱油
5楼-- · 2020-08-18 22:29

这不是正确的答案,因为您几乎可以将每个单词都用于本地对象/变量。 甚至可以像他将报表用作本地类对象一样使用关键字。

为什么无法激活代码的问题是,列表的类定义必须在类报告的定义之前。

问候
斯蒂芬

一周热门 更多>