本程序利用CL_ALV_TABLE_CREATE类的CREATE_DYNAMIC_TABLE方法创建了动态内表,
并利用指针往内表中填充数据,最后将内表显示。
[@more@]*&---------------------------------------------------------------------*
*& Report ZCREATE_DYNAMIC_TABLE
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT ZCREATE_DYNAMIC_TABLE.
TYPE-POOLS: SLIS.
* Field Catalog for List Viewer Control
DATA: GT_FCAT TYPE LVC_T_FCAT,
GH_FCAT LIKE LINE OF GT_FCAT.
DATA: GT_DYN TYPE REF TO DATA.
DATA: GH_LINE TYPE REF TO DATA.
FIELD-SYMBOLS:
*----------------------------------------------------------------------*
* START-OF-SELECTION
*----------------------------------------------------------------------*
START-OF-SELECTION.
* Create Field catalog
GH_FCAT-COL_POS = 1.
GH_FCAT-FIELDNAME = 'ID'.
APPEND GH_FCAT TO GT_FCAT.
GH_FCAT-COL_POS = 2.
GH_FCAT-FIELDNAME = 'NAME'.
APPEND GH_FCAT TO GT_FCAT.
* Create Dynamic Data Table
CALL METHOD CL_ALV_TABLE_CREATE=>CREATE_DYNAMIC_TABLE
EXPORTING
IT_FIELDCATALOG = GT_FCAT
IMPORTING
EP_TABLE = GT_DYN.
* Create a new Line with the same structure of the table
ASSIGN GT_DYN->* TO
CREATE DATA GH_LINE LIKE LINE OF
ASSIGN GH_LINE->* TO
* Fill Data Table
ASSIGN COMPONENT 1 OF STRUCTURE
ASSIGN COMPONENT 2 OF STRUCTURE
INSERT
* Display Data Table
LOOP AT
WRITE: /
ENDLOOP.
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/8214011/viewspace-924530/ ,如需转载,请注明出处,否则将追究法律责任。