ITPub博客

首页 > 数据库 > 数据库开发技术 > 创建动态内表

创建动态内表

原创 数据库开发技术 作者:sapkitty 时间:2007-07-06 15:15:14 0 删除 编辑

本程序利用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博客 ” ,链接:https://blog.itpub.net/8214011/viewspace-924530/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2008-08-04

  • 博文量
    62
  • 访问量
    213944