abap<itab>refresh,clear,free
在ABAP开发过程中,clear,refresh,free都有用来清空内表的作用,但用法还是有区别的。
- clear itab,清空内表行以及工作区,但保存内存区。
- clear itab[],清空内表行,但不清空工作区,但保存内存区。
- refresh itab,与clear itab[]相似,只清空内表行,但保存内存区。
- free itab,与refresh相似,清空内表行,但不清空工作区,且释放内存区域。
clear itab. 清表头(如果没有表头,清表体) 保存内存区
clear itab[]. 清表体保存内存区
refresh itab. = clear itab[]. 清表体 保存内存区
free itab. 清表体同时释放内存区
----------------------------------------------------------------------------
REFRESH .
该语句将内 表重置为填 充它以前的 状态。这意 味着表格将 不包含任何 行。
如果使用没 有表格工作 区域的内表 ,可以使用 CLEAR 语句代替 REFRESH 语句
1、Deletes all table lines.
2、Storage space is not released.
3、Paging is released.
4、Header line remains unchanged.
CLEAR .
如果使用有 表头行的内 表,CLEAR 仅 清除表格工 作区域。要 重置整个内 表而不清除 表格工作区 域,使用 REFRESH 语句或 CLEAR 语句
CLEAR [].
内表名称之 后的方括号 指内表体。
使用 REFRESH 或 CLEAR 初始化内表 后,系统保 持在内存中 保留的空间 。可以用 FREE 语句释放内 存
1、Initialises the header line.
2、Internal table lines remain unchanged.
FREE .
也可以使用 FREE 语句重置内 表并直接释 放其内存, 而不必先使 用 REFRESH 或 CLEAR。 与 REFRESH 一样,FREE
在表格体上 ,而不在表 格工作区域 上工作。
在 FREE 语句之后, 可以再次定 位内表。这 样,系统就 再次保留内 存空间。
可以使用如 下逻辑表达 式检查内表 是否为空
1、Deletes all table lines.
2、Storage space is released.
3、Header line remains unchanged.
例:
DATA: BEGIN OF LINE,
COL1,
COL2,
END OF LINE.
DATA ITAB LIKE LINE OCCURS 10.
LINE-COL1 = 'A'. LINE-COL2 = 'B'.
APPEND LINE TO ITAB.
REFRESH ITAB.
IF ITAB IS INITIAL.
WRITE 'ITAB is empty'.
FREE ITAB.
ENDIF.
其输出为:
ITAB is empty.
在该程序中 ,先对内表 ITAB进 行填充,然 后再用 REFRESH 初始化。在 IF 语句中,用 带 IS INITIAL 参数的逻辑 表达式检查 ITAB 是否为空。 如果空着, 则释放内存 。
abap<itab>refresh,clear,free的更多相关文章
- ABAP 内表 详解
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- ABAP内表数据和JSON格式互转
本程序演示ABAP内表数据如何转为JSON格式,以及JSON数据如何放入内表. 注:json字符串格式如:jsonstr = '[ {flag: "0",message: &quo ...
- ZPPR016-在制品清单报表
*&---------------------------------------------------------------------**& Report ZPPR016*&a ...
- SAP 数据类型
数据元素和基本类型对应关系 数据字典预置类型 ABAP类型 运行长度 说明 ACCP N(6) 6 会计计算周期 CHAR C(n) 1-255 字符 CLNT C(3) 3 集团,数据区域代码 CU ...
- SAP自开发程序
1.显示/查找SAP所有可执行程序清单,双击事务码执行. *&----------------------------------------------------------------- ...
- ABAP-动态ALV
1.参数定义 "ALV type-pools:slis,rsds,vrm. data:gt_fieldcat type lvc_t_fcat with header line, gt_eve ...
- test_bdc
[转]REPORT zbdc_test_by_shir. * 定义个BDC格式的内表**************************************************DATA : B ...
- 【Java EE 学习 47】【Hibernate学习第四天】【sesion】【一级缓存】【懒加载】
一.Session概述 1.Session 接口是 Hibernate 向应用程序提供的操纵对数据库的最主要的接口, 它提供了基本的保存, 更新, 删除和加载Java 对象的方法. 2.理解Sessi ...
- 批量创建SO
生成一般销售订单和退货订单所要使用的BAPI不同, 一般销售订单: BAPI_SALESORDER_CREATEFROMDAT2 退货订单: BAPI_CUSTOMERRETURN_CREATE 二者 ...
随机推荐
- java 解压缩Zip文件 ziputil
package com.lanyuan.assembly.util; import java.io.BufferedOutputStream;import java.io.File;import ja ...
- python UI自动化实战记录二:请求接口数据并提取数据
该部分记录如何获取预期结果-接口响应数据,分成两步: 1 获取数据源接口数据 2 提取后续页面对比中要用到的数据 并且为了便于后续调用,将接口相关的都封装到ProjectApi类中. 新建python ...
- fiddler和charles
(4)学习浏览器代理和手机网络抓包,涉及到了fiddler和charles,
- 玩转web之ligerui(一)---ligerGrid又一次指定url
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/u012116457/article/details/27109227 请珍惜小编劳动成果.该文章为小 ...
- BZOJ4538:[HNOI2016]网络(树链剖分,堆)
Description 一个简单的网络系统可以被描述成一棵无根树.每个节点为一个服务器.连接服务器与服务器的数据线则看做 一条树边.两个服务器进行数据的交互时,数据会经过连接这两个服务器的路径上的所有 ...
- POJ 1379 模拟退火
模拟退火算法,很久之前就写过一篇文章了.双倍经验题(POJ 2420) 题意: 在一个矩形区域内,求一个点的距离到所有点的距离最短的那个,最大. 这个题意,很像二分定义,但是毫无思路,也不能暴力枚举, ...
- HDU 4165 卡特兰
题意:有n个药片,每次吃半片,吃2n天,那么有多少种吃法. 分析:如果说吃半片,那么一定要吃过一整片,用 ) 表示吃半片,用 ( 表示吃整片,那么就是求一个正确的括号匹配方案数,即卡特兰数. 卡特兰数 ...
- 【bzoj2563】 阿狸和桃子的游戏
题目 非常妙的题目,一看到就以为是一道博弈,之后就不会做了 正解非常巧妙,由于我们只需要求出最后两个人得分的差值,所以对于每一条边我们将其的权值拆成两边,分给其连接的两个点 如果这两个点被同一个人选择 ...
- luogu P1503 鬼子进村
嘟嘟嘟 线段树好题. 其实挺水的,想暴力怎么做:每一次从这个点开始向两边扩,直到遇到第一个摧毁的房屋. 那么把暴力改成倍增,然后线段树查询区间和是否为0.时间复杂度O(nlog2n). 题解好像有线段 ...
- 使用ParseExact方法将字符串转换为日期格式
实现效果: 知识运用: DateTime结构的ParseExact方法 public static DateTime ParseExact(string s,string format,IFormat ...