SAP ABAP——内表(三)【工作区与表头】

简介: 本文主要介绍一下SAP ABAP中内表的工作区和表头

本文主要介绍一下SAP ABAP中内表的工作区和表头



工作区

工作区的含义

        工作区就是一个与对应内表结构完全一致的结构体,但是工作区内只能存储至多一条数据。对于内表中数据的增删查改都需要通过工作区去进行操作

PS:注意!最好给每一个内表都设置对应的工作区,并且每次数据操作完毕后都要清空工作区!除此之外,工作区的数据都需要先APPEND进内表,否则内表中不会有任何数据!!!下面用两个案例来进行演示!(使用的表为索引表)


案例代码演示(使用APPEND语句)

DATA:GT_SFLIGHT TYPE TABLE OF SFLIGHT. "参照数据库表sflight定义内表
DATA:GS_SFLIGHT TYPE SFLIGHT. "参照数据库表sflight定义工作区
GS_SFLIGHT-CARRID = 'AC'.
GS_SFLIGHT-CONNID = 0820.
GS_SFLIGHT-FLDATE = '20221031'.
GS_SFLIGHT-PRICE = 1500.
APPEND GS_SFLIGHT TO GT_SFLIGHT. "将工作区中数据插入内表中
MODIFY SFLIGHT FROM TABLE GT_SFLIGHT.

效果演示(使用APPEND语句)

0dde8c6e7e7c387e71cc01a71221d11.png


案例代码演示(不使用APPEND语句)

DATA:GT_SFLIGHT TYPE TABLE OF SFLIGHT. "参照数据库表sflight定义内表
DATA:GS_SFLIGHT TYPE SFLIGHT. "参照数据库表sflight定义工作区
GS_SFLIGHT-CARRID = 'AC'.
GS_SFLIGHT-CONNID = 0820.
GS_SFLIGHT-FLDATE = '20221031'.
GS_SFLIGHT-PRICE = 1500.
MODIFY SFLIGHT FROM TABLE GT_SFLIGHT.

效果演示(不使用APPEND语句)

edd89748f5b6566bf0bc179304557bf.png



表头

表头的含义

        表头是一个与内表名字相同的工作区,需要在创建内表时最后使用【WITH HEADER LINE】语句进行定义,对于拥有表头的内表来说,其增删查改语句相较没有表头的内表可以进行简化,下面会列出常用的对比

含表头内表的创建


下面用一个案例来进行演示:

DATA:GT_SFLIGHT TYPE TABLE OF SFLIGHT WITH HEADER LINE. "参照数据库表sflight定义含表头内表

1fd988c1d4abe284fabd98ceacb9062.png

PS:

1)表头行的符号是一顶帽子;

2)指定内表需要在后面加上"[]",比如指定GT_SFLIGHT内表需要写成"GT_SFLIGHT[]",否则系统会认为GT_SFLIGHT是同名工作区



带表头内表与不带表头内表语句比较

PS:【wa】代表工作区,【itab】代表内表

- 所有内表(Standard,Sorted,Hashed Type)

不带表头时使用的语句 带表头时使用的语句
INSERT wa INTO TABLE itab. INSERT TABLE itab.
COLLECT wa INTO itab COLLECT itab.
READ TABLE itab... INTO wa. READ TABLE itab...
MODIFY TABLE itab FROM wa. MODIFY TABLE itab...
MODIFY itab FROM wa... WHERE... MODIFY itab... WHERE...
DELETE TABLE itab FROM wa. DELETE TABLE itab.
LOOP AT itab INTO wa... LOOP AT itab...

- INDEX表(Standard,Sorted Type)

不带表头时使用的语句 带表头时使用的语句
APPEND wa TO itab. APPEND itab.
INSERT wa INTO itab... INSERT itab.
MODIFY itab FROM wa... MODIFY itab...
目录
相关文章
|
4天前
|
存储 安全 数据库
什么是 SAP ABAP 数据库表的 Display Maintenance Allowed with Restrictions
什么是 SAP ABAP 数据库表的 Display Maintenance Allowed with Restrictions
19 3
|
4天前
|
前端开发 数据库 开发者
如何在 SEGW 事务码里为 SAP ABAP OData 服务实现 Function Import 试读版
如何在 SEGW 事务码里为 SAP ABAP OData 服务实现 Function Import 试读版
6 1
|
4天前
SAP ABAP OData 服务里需要指定 guid 类型的请求参数时,正确语法是什么?
SAP ABAP OData 服务里需要指定 guid 类型的请求参数时,正确语法是什么?
6 1
|
4天前
|
安全 API 数据库
SAP ABAP OData 中 Function import 的概念介绍
SAP ABAP OData 中 Function import 的概念介绍
13 2
|
4天前
|
SQL 监控 Oracle
SAP ABAP 系统错误 Return value of the database layer SQL dbsl rc 99
SAP ABAP 系统错误 Return value of the database layer SQL dbsl rc 99
11 0
|
4天前
|
存储 前端开发 Linux
在 SAP ABAP 系统里访问 FTP 服务器
在 SAP ABAP 系统里访问 FTP 服务器
9 0
|
4天前
|
SQL 负载均衡 监控
SAP ABAP DBSQL_SQL_ERROR 错误
SAP ABAP DBSQL_SQL_ERROR 错误
15 2
|
4天前
|
存储 前端开发 应用服务中间件
使用 SAP ABAP 执行 FTP 操作
使用 SAP ABAP 执行 FTP 操作
8 0
|
4天前
|
BI 网络安全
如何使用 ABAPGit 在 SAP ABAP 系统安装 abap2xlsx 工具试读版
如何使用 ABAPGit 在 SAP ABAP 系统安装 abap2xlsx 工具试读版
7 0
|
4天前
|
监控 安全 应用服务中间件
SAP ABAP STRUST 事务码里的错误消息 - Local PSE does not match database original
SAP ABAP STRUST 事务码里的错误消息 - Local PSE does not match database original
7 0

热门文章

最新文章

http://www.vxiaotou.com