您的位置:首页 > 其它

内表操作-insert,delete,modify,sort

2015-09-08 16:39 369 查看
*&---------------------------------------------------------------------*
*& Report  ZTEST_YHY_03
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

REPORT ZTEST_YHY_03.
TYPES: BEGIN OF ty_stu,
id(8) type c,
name(10) TYPE c,
sex(2) TYPE c,
END OF ty_stu.
DATA: it_stu TYPE TABLE OF ty_stu,
wa_stu TYPE ty_stu.

"----------数据准备------

wa_stu-id = '20115944'.
wa_stu-name = '李四'.
wa_stu-sex = '男'.
APPEND wa_stu TO  it_stu.
*WRITE wa_stu."可以直接write,不过字段之间没有空格。。连在了一起。
CLEAR wa_stu.

wa_stu-id = '20115945'.
wa_stu-name = '李五'.
wa_stu-sex = '男'.
APPEND wa_stu TO  it_stu.
CLEAR wa_stu.

wa_stu-id = '20115946'.
wa_stu-name = '王六'.
wa_stu-sex = '男'.
APPEND wa_stu TO  it_stu.
CLEAR wa_stu.

wa_stu-id = '20115955'.
wa_stu-name = '王八'.
wa_stu-sex = '男'.

"index的范围只能是0<index<i+1  i为已存在记录数。当index为0时报错,index>i+1时就像什么也没做
"index=2 那么这条记录就是第二行,原来的移到第三行
INSERT wa_stu INTO it_stu INDEX 4.
CLEAR wa_stu.

*READ TABLE it_stu INTO wa_stu INDEX 1.
**WRITE wa_stu.
*wa_stu-name = 'change'.
*MODIFY it_stu FROM wa_stu INDEX 2 .

wa_stu-id = '201159444'.
wa_stu-name = '方圆'.
wa_stu-sex = '男'.
APPEND wa_stu TO  it_stu.
CLEAR wa_stu.

*DELETE it_stu INDEX 5.

LOOP AT it_stu INTO wa_stu.
WRITE:    / wa_stu-id,
wa_stu-name,
wa_stu-sex.
ENDLOOP.

*SORT it_stu DESCENDING.

*  IF wa_stu-id = '20115946'.
*    WRITE: / sy-tabix,
*            wa_stu-id,
*            wa_stu-name,
*            wa_stu-sex.
*  ENDIF.
*
*ENDLOOP.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: