使用类和方法cl_lib_seltab => new

2020-08-12 16:51发布

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

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


大家好;

希望有人可以帮助我了解如何使用此类和方法。 当使用如下所示的" FOR"语句定义范围时,它可以正常工作,但是我试图通过将范围作为参数传递给FM,然后在FM中使用类来创建通用功能模块。 使用调试器,我发现了这一行

lr_struc_descr?= _mr_table_descr-> get_table_line_type()

cl_lib_seltab的构造函数中的返回行类型为1行,而不是使用下面的" FOR"语句定义传递给范围时返回的4个字段。

.....

*输出类型
类型:ty_result的开始,
BUKRS类型BUKRS,
KUNNR类型KUNNR,
BELNR类型BELNR_D,
GJAHR类型GJAHR,
BLART类型BLART ,
ty_result结束。

....

SELECT-OPTIONS:s_bukrs用于ls_result-bukrs,
s_kunnr用于ls_result-kunnr。

.....

DATA(lr_seltab)= cl_lib_seltab => new(it_sel = s_bukrs [])。

调试时,我发现以下一行是cl_lib_seltab的CONSTRUCTOR

lt_fields = lr_struc_descr-> get_components()。

在调用时返回s_bukrs的4个字段(符号,选项,低,高)。

我的问题是,当我将S_BUKRS定义为FM的参数作为TABLE输入参数时,如下:

S_BUKRS像BUKRS_RAN

该行:

lt_fields = lr_struc_descr-> get_components()。

不返回任何内容。

我认为这与提供给该方法的内存指针有关。 我尝试了各种组合,但似乎无法使用。

有什么想法吗?


谢谢

斯蒂芬

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

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


大家好;

希望有人可以帮助我了解如何使用此类和方法。 当使用如下所示的" FOR"语句定义范围时,它可以正常工作,但是我试图通过将范围作为参数传递给FM,然后在FM中使用类来创建通用功能模块。 使用调试器,我发现了这一行

lr_struc_descr?= _mr_table_descr-> get_table_line_type()

cl_lib_seltab的构造函数中的返回行类型为1行,而不是使用下面的" FOR"语句定义传递给范围时返回的4个字段。

.....

*输出类型
类型:ty_result的开始,
BUKRS类型BUKRS,
KUNNR类型KUNNR,
BELNR类型BELNR_D,
GJAHR类型GJAHR,
BLART类型BLART ,
ty_result结束。

....

SELECT-OPTIONS:s_bukrs用于ls_result-bukrs,
s_kunnr用于ls_result-kunnr。

.....

DATA(lr_seltab)= cl_lib_seltab => new(it_sel = s_bukrs [])。

调试时,我发现以下一行是cl_lib_seltab的CONSTRUCTOR

lt_fields = lr_struc_descr-> get_components()。

在调用时返回s_bukrs的4个字段(符号,选项,低,高)。

我的问题是,当我将S_BUKRS定义为FM的参数作为TABLE输入参数时,如下:

S_BUKRS像BUKRS_RAN

该行:

lt_fields = lr_struc_descr-> get_components()。

不返回任何内容。

我认为这与提供给该方法的内存指针有关。 我尝试了各种组合,但似乎无法使用。

有什么想法吗?


谢谢

斯蒂芬

付费偷看设置
发送
8条回答
1楼-- · 2020-08-12 17:40

嗯,图片没有上传。 我尝试上传调试器中显示的值。 当它起作用时,字段lt_fields有4行。 1表示标志,选项,高低。 当S_BUKRS作为参数时,找不到行。

picture3.jpg

picture4.jpg

2楼-- · 2020-08-12 17:36

请使用COMMENT按钮发表评论,提问,添加详细信息, 回复OP评论等,ANSWER只是提出一个解决方案,在答案区域的右边删除SAP文本。

一周热门 更多>