0

我有lt_result表作为功能模块的结果,只是一个包含 50 多列的普通内部表。

所以,我必须将它发送到 ALV 显示器,如何正确使用该表作为源REUSE_ALV_FIELDCATALOG_MERGE

CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
 EXPORTING
   I_PROGRAM_NAME               = sy-repid
   I_INTERNAL_TABNAME           = 'LT_RESULT'

这样它可以编译,但不会从该表中获取任何字段名。同样,当我尝试使用结构时。

如何lt_fieldcat[]以最短的方式从给定的表中获取字段名称?

4

3 回答 3

2

最短的方法是使用SALV 类

data: gr_table  type ref to cl_salv_table.

call method cl_salv_table=>factory
  IMPORTING
    R_SALV_TABLE = gr_table
  CHANGING
    t_table      = lt_result.

gr_table->display( ).

这样你就不需要 fieldcatalog 了。

于 2016-03-14T08:17:51.423 回答
1
    call function 'REUSE_ALV_FIELDCATALOG_MERGE'
   exporting
     i_program_name                    = sy-repid
     i_internal_tabname                = 'LT_RESULT'
     i_inclname                        = sy-repid "< if you use top-include  
    changing
     ct_fieldcat                       = lt_fldcat[]

使用TYPE而不是使用LIKE声明 lt_result 时

于 2016-03-13T22:54:54.507 回答
-1

x+(28%of342+71.78÷17.91)-102.98×4=298.09 斯拉夫

于 2018-09-29T04:41:10.623 回答