Abap 将内部表传递到重用\u ALV\u字段目录\u合并

Abap 将内部表传递到重用\u ALV\u字段目录\u合并,abap,alv,Abap,Alv,我得到了lt_result表作为功能模块的结果,只是一个普通的内部表,有50多列 因此,我必须将其发送到ALV display,如何正确使用该表作为重用\u ALV\u FIELDCATALOG\u MERGE CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE' EXPORTING I_PROGRAM_NAME = sy-repid I_INTERNAL_TABNAME = 'LT_RESULT'

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

因此,我必须将其发送到ALV display,如何正确使用该表作为
重用\u ALV\u FIELDCATALOG\u MERGE

CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
 EXPORTING
   I_PROGRAM_NAME               = sy-repid
   I_INTERNAL_TABNAME           = 'LT_RESULT'
这样它可以编译,但不会从该表中获取任何字段名。同样,当我尝试使用结构时

如何以尽可能短的方式将字段名从给定表中获取到
lt\u fieldcat[]

调用函数“重用\u ALV\u字段目录\u合并”
    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[]
出口 i_program_name=sy repid i\u内部\u选项卡名称='LT\u结果' i_inclname=sy repid“<如果使用top include 改变 ct\U fieldcat=lt\U fldcat[]
当使用类型声明lt\u结果时和不使用类似

调用函数“重用\u ALV\u FIELDCATALOG\u MERGE”
出口
i_program_name=sy repid
i\u内部\u选项卡名称='LT\u结果'
i_inclname=sy repid“<如果使用top include
改变
ct\U fieldcat=lt\U fldcat[]

当使用类型声明lt_结果而不使用LIKE

时,最短的方法是使用:


这样,您根本不需要fieldcatalog。

最短的方法是使用:

这样,您根本不需要字段目录。

x+(342+71.78的28%÷17.91)-102.98×4=298.09 Slav it

x+(342+71.78的28%÷17.91)-102.98×4=298.09
Slav it

正在使用(有充分记录的)SALV类作为一种选择?Uhm。我不知道。但是这很有帮助,谢谢。使用(有很好文档记录的)SALV类是一种选择吗?嗯。我不知道。但这很有帮助,谢谢。嗨,欢迎来到SO。请详细说明你的答案,并提供更多的细节,而不仅仅是一个公式。嗨,欢迎来到SO。请详细说明,并提供比公式更详细的答案。
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( ).