具有类型依赖性的本地类的放置

2020-09-19 15:08发布

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

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


嗨,大家

我对这两个示例类的定义顺序有疑问。 它们是在报告中本地定义的。

那是完整的代码:

 REPORT zcl_dependency_test。

 B类定义已延期。
 * B类定义负载。  "此行已过时,无法正常运行。


 对定义进行分类。

  公共部分。
  数据:lo_a TYPE REF TO b,
        lt_sofm类型b => tt_sofm。

  类型:tt_t001 t001的标准类型表。

 ENDCLASS。


 B类定义。

  公共部分。
  数据:lo_b TYPE REF TO a,
        lt_t001类型a => tt_t001。

  类型:tt_sofm sofm的标准类型表。

 ENDCLASS。





 对实现进行分类。

 ENDCLASS。

 B类实施。

 ENDCLASS。

此行中的代码有错误:

 lt_sofm TYPE b => tt_sofm。

如果我切换定义的位置(第一类b和第一类a),然后输入" CLASS A DEFINITION DEFERRED"。 一开始,我在这行上得到一个错误:

 lt_t001类型a => tt_t001。

有人知道如何解决这种依赖性吗?

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

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


嗨,大家

我对这两个示例类的定义顺序有疑问。 它们是在报告中本地定义的。

那是完整的代码:

 REPORT zcl_dependency_test。

 B类定义已延期。
 * B类定义负载。  "此行已过时,无法正常运行。


 对定义进行分类。

  公共部分。
  数据:lo_a TYPE REF TO b,
        lt_sofm类型b => tt_sofm。

  类型:tt_t001 t001的标准类型表。

 ENDCLASS。


 B类定义。

  公共部分。
  数据:lo_b TYPE REF TO a,
        lt_t001类型a => tt_t001。

  类型:tt_sofm sofm的标准类型表。

 ENDCLASS。





 对实现进行分类。

 ENDCLASS。

 B类实施。

 ENDCLASS。

此行中的代码有错误:

 lt_sofm TYPE b => tt_sofm。

如果我切换定义的位置(第一类b和第一类a),然后输入" CLASS A DEFINITION DEFERRED"。 一开始,我在这行上得到一个错误:

 lt_t001类型a => tt_t001。

有人知道如何解决这种依赖性吗?

付费偷看设置
发送
2条回答
jovirus
1楼 · 2020-09-19 15:29.采纳回答

按文档所述工作。

https: //help.sap.com/http.svc/rc/abapdocu_752_index_htm/7.52/zh-CN/index.htm?file=abapclass_deferred.htm

"在实际定义该类之前,无法访问该类的各个组件。"

您必须将声明外包到另一个类或两个类前面的接口中,或者在封装的包中使用全局类。

灬番茄
2楼-- · 2020-09-19 15:49

使用接口是一种选择, 在哪里定义类型?

界面a_b。

  类型:tt_sofm sofm的标准类型表。

 终端接口。
 

一周热门 更多>