ABAP区别CLEAR、REFRESH、FREE
2024-08-24 19:50:42
CLEAR、REFRESH、FREE
内表:如果使用有表头行的内表,CLEAR 仅清除表格工作区域。例如 clear gs-school 清除工作区。
要重置整个内表而不清除表格工作区域,使用REFRESH语句或 CLEAR 语句CLEAR <itab>[].;REFRESH加不加中括号都是只清内表,另外REFRESH是专为清内表的,不能清基本类型变量,但CLEAR可以清基本类型变量。例如 clear gs-school[] 等价于 refresh gs-school 等价于 refresh gs-school[]。
CLEAR、REFRESH语句都不会释放掉内表所占用的空间。
如果想初始化内表的同时还要释放所占用的空间,请使用:FREE <itab>. 比如 free gs-school 可以释放内表空间。
TYPES: BEGIN OF ty_school,
schoolno() TYPE c,
schoolname() TYPE c,
END OF ty_school.
DATA gt_school TYPE TABLE OF ty_school WITH HEADER LINE. gt_school-schoolno = ''.
gt_school-schoolname = '学生1'.
APPEND gt_school.
CLEAR gt_school. gt_school-schoolno = ''.
gt_school-schoolname = '学生2'.
APPEND gt_school.
CLEAR gt_school. gt_school-schoolno = ''.
gt_school-schoolname = '学生3'.
INSERT gt_school INDEX .
CLEAR gt_school. WRITE '输出全表为:'.
LOOP AT gt_school.
WRITE / gt_school.
ENDLOOP. gt_school-schoolno = ''.
gt_school-schoolname = '修改学生3'.
MODIFY gt_school INDEX .
CLEAR gt_school.
WRITE / '输出全表为:'.
LOOP AT gt_school.
WRITE / gt_school.
ENDLOOP.
CLEAR gt_school. READ TABLE gt_school WITH KEY schoolno = ''.
WRITE: / '读取到的行为:',gt_school.
CLEAR gt_school. DELETE TABLE gt_school WITH TABLE KEY schoolno = '' schoolname = '修改学生3'.
WRITE / '删除后的结果为:'.
LOOP AT gt_school.
WRITE / gt_school.
ENDLOOP.
gt_school-schoolno = ''.
gt_school-schoolname = '修改学生3'. REFRESH gt_school.
APPEND gt_school.
CLEAR gt_school[].
Free gt_school.
APPEND gt_school.
CLEAR gt_school.
CLEAR gt_school.
最新文章
- hdu 4481 Time travel(高斯求期望)(转)
- 转自pnljs 委托(Func<;int,bool>;)
- Linux Shell编程三
- [转贴]PHP 开发者应了解的 24 个库
- Canvas制作排序算法演示动画
- perl 正则命名捕获
- 数据可视化开源系统(python开发)
- selenium框架与chrome浏览器的不兼容问题
- PHP自动测试框架Top 10
- 谷歌浏览器F12基本用法
- Akka详细介绍
- 20155324 2016-2017-2 《Java程序设计》第1周学习总结
- 在 Ubuntu 上安装 TensorFlow (官方文档的翻译)
- 【手记】解决“未能创建 SSL/TLS 安全通道”异常
- 解决从pip上下载的最新flask版本不能运行flaskr和最新特性的问题
- 我现所认知的SSH
- 《Arduino 机器人制作指南》唐乐 分享 pdf下载
- .NETCore Sqlserver下对Dapper的扩展支持
- HTML的各个标签的默认样式
- linux常见面试题及答案