REUSE_ALV_FIELDCATALOG_MERGE 自动创建格式
实例:
自定义结构:
TYPE-POOLS:slis. "调用该类型池
“”
REUSE_ALV_FIELDCATALOG_MERGE 函数可根据内表结构返回FIELDCAT字段结构信息,定义内表的时候只能用 like
DATA: BEGIN OF gs_out,
matnr LIKE mara-matnr,
maktx LIKE makt-maktx,
END OF gs_out.
DATA gt_out LIKE TABLE OF gs_out .
fieldcat定义:
DATA lt_feildcat TYPE slis_t_fieldcat_alv.
注意:参考这个时候 slis_t_fieldcat_alv.
alv显示需要用: REUSE_ALV_GRID_DISPLAY 。
CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
i_program_name = sy-repid
i_internal_tabname = 'GS_OUT' “”“”自定义的结构这两个参数都需要填
i_inclname = sy-repid
CHANGING
ct_fieldcat = lt_feildcat[]
EXCEPTIONS
inconsistent_interface = 1
program_error = 2
OTHERS = 3.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = sy-repid
is_layout = ls_layout
it_fieldcat = lt_feildcat[]
TABLES
t_outtab = gt_out
EXCEPTIONS
program_error = 1
OTHERS = 2.
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.