本程序利用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: TYPE ANY TABLE,
TYPE ANY,
TYPE ANY.
*----------------------------------------------------------------------*
* 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 TO .
= '001'.
ASSIGN COMPONENT 2 OF STRUCTURE TO .
= 'RAY'.
INSERT INTO TABLE .
* Display Data Table
LOOP AT ASSIGNING .
WRITE: / .
ENDLOOP.
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/8214011/viewspace-924530/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/8214011/viewspace-924530/