您的位置:首页 > 其它

APAP中REFRESH、CLEAR和FREE的区别

2016-06-15 15:29 471 查看
REFRESH
refresh itab,与clear itab[]相似,只清空内表行,但保存内存区
 
CLEAR
   clear itab,清空内表行以及工作区,但保存内存区。
   clear itab[],清空内表行,但不清空工作区,但保存内存区。
 
FREE

free itab,与refresh相似,清空内表行,但不清空工作区,且释放内存区域。
 
表1 带工作区的内表itab各种操作结果

操作
工作区(work area)-itab
内表行-itab[]
内存区
REFRESH itab
保留
清除
保留
CLEAR itab
清除
 
 
CLEAR itab[]
保留
 
 
FREE
保留
 
清除
Demo:
 
DATA:
      BEGIN OF itab OCCURS 0,
        fval TYPE i,
      END OF itab.  "inter table with head line
 
itab-fval = 1.
APPEND itab.
 
itab-fval = 2.
APPEND itab.
 
REFRESH itab. "clear the detail of itab, but save header line
IF itab[] IS INITIAL. 
  WRITE: / 'Itab is empty'. 
  FREE itab.
ENDIF.
 
WRITE: / itab-fval. "output the head line ('2')
CLEAR itab."Clear
the header line
WRITE: / itab-fval. "output the initial value('0')

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: