初始化内表的作用是清空内表所有的数据行,将内表恢复到填充或赋值之前的状态。初始化内表过程中需要注意之处仍然是初始化无 表头行内表和有表头行内表的区别,以及初始化内表和表头行的区别。
(1)CLEAR ITAB. 同时清空表头和行内表的值
(2)CLEAR ITAB[]. 只清空内表本身的值,保留表头行的值。
(3)REFRESH TAB 只清空内表本身的值,保留表头行的值。
(4)FREE ITAB. 只清空内表本身的值,保留表头行的值。
DATA: BEGIN OF line,
col1(1) TYPE c,
col2(1) TYPE c,
END OF line.
DATA itab LIKE TABLE OF line WITH HEADER LINE.
line-col1 = 'A'. line-col2 = 'B'.
APPEND line TO itab.
loop at itab.
write : itab-col1.
endloop.
clear itab. "在这里可以尝试CLEAR ITAB[],FREE ITAB,REFRESH ITAB,看看效果是不是如上所说这样。
IF itab IS INITIAL.
WRITE 'ITAB is empty'.
ENDIF.