SAP ABAP——内表(二)【创建内表】

简介: 本文主要介绍一下SAP ABAP中创建内表的几种方式

本文主要介绍一下SAP ABAP中创建内表的几种方式


参照局部结构体类型定义内表


创建流程

1.首先定义结构体类型

TYPES:BEGIN OF <t_str>,
     ...
      END OF <t_str>.

2.其次参照上一步创建的局部结构体类型定义内表

DATA:itab TYPE [STANDARD|SORTED|HASHED] TABLE OF <t_str> WITH {UNIQUE|NON-UNIQUE} KEY <keys> 
[INTIAL SIZE <n>].


示例代码

TYPES:BEGIN OF S_SFLIGHT,
  Z_CARRID TYPE SFLIGHT-CARRID,
  Z_CONNID TYPE SFLIGHT-CONNID,
  Z_FLDATE TYPE SFLIGHT-FLDATE,
  Z_PRICE  TYPE SFLIGHT-PRICE,
  END OF S_SFLIGHT.
  DATA:GT_SFLIGHT TYPE TABLE OF S_SFLIGHT WITH NON-UNIQUE DEFAULT KEY.


效果演示

a0fcdc93e036e33fcd4e3f081a28320.png



参照局部表类型定义内表


创建流程

1. 首先定义结构体类型

TYPES:BEGIN OF <t_str>,
     ...
      END OF <t_str>.

2.其次参照上一步创建的局部结构体类型定义表类型

TYPES:t_itab TYPE [STANDARD|SORTED|HASHED] TABLE OF <t_str> WITH {UNIQUE|NON-UNIQUE} KEY <keys> 
[INTIAL SIZE <n>].
  • [STANDARD|SORTED|HASHED]为可选参数,从左到右分别对应标准表,排序表和哈希表;若不指定该参数则默认为标准表
  • [INTIAL SIZE ]为可选参数,可以指定定义的内表的大小

3.最后参照上一步创建的局部表类型定义内表

DATA:itab TYPE <t_itab> [WITH HEADER LINE].
  • [WITH HEADER LINE]为可选参数,可以指定内表附带工作区,将在下一篇文章中讲解


示例代码

TYPES:BEGIN OF S_SFLIGHT,
  Z_CARRID TYPE SFLIGHT-CARRID,
  Z_CONNID TYPE SFLIGHT-CONNID,
  Z_FLDATE TYPE SFLIGHT-FLDATE,
  Z_PRICE  TYPE SFLIGHT-PRICE,
  END OF S_SFLIGHT.
  TYPES:T_SFLIGHT TYPE TABLE OF S_SFLIGHT WITH NON-UNIQUE DEFAULT KEY.
  DATA:GT_SFLIGHT TYPE T_SFLIGHT.


效果演示

7edf19e36f3f05cd8d3eefebef5736a.png



参照全局表定义内表


创建流程

DATA:itab TYPE <target> WITH [UNIQUE|NON-UNIQUE] KEY <keys> [INTIAL SIZE <n>] [WITH HEADER LINE].


示例代码

DATA:GT_SFLIGHT TYPE STANDARD TABLE OF SFLIGHT WITH NON-UNIQUE DEFAULT  KEY.


效果演示

b5a346f19c74ed3003a14b07ae35922.png



参照全局表类型定义内表


创建流程

DATA:itab TYPE <T_itab> [WITH HEADER LINE].
  • 为数据字典中全局表类型


全局表类型参数

ae468f88b43ffc1959ed2305c026c93.png


示例代码

DATA:GT_SFLIGHT TYPE ZT_SFLIGHT.


效果演示

1946681d1d3b68727c6a6d76bd7dba2.png



旧式内表定义法


创建流程

DATA:BEGIN OF <itab> OCCURS 0,
    f1,
    f2,
    f3
    ......
      END OF <itab>.
  • 旧式内表定义法即使没有使用[WITH HEADER LINE]语句,也默认包含表头行
  • 旧式内表定义法只能用于标准表的创建


示例代码

DATA:BEGIN OF GT_SFLIGHT OCCURS 0,
  CARRID TYPE SFLIGHT-CARRID,
  CONNID TYPE SFLIGHT-CONNID,
  FLDATE TYPE SFLIGHT-FLDATE,
  PRICE  TYPE SFLIGHT-PRICE,
 END OF GT_SFLIGHT.


效果演示

ce61745942b9d80ed9ed98f0206f4f1.png

649c161aefa7b2014b4965a4fe2fa68.png

目录
相关文章
|
5月前
|
存储 安全 数据库
什么是 SAP ABAP 数据库表的 Display Maintenance Allowed with Restrictions
什么是 SAP ABAP 数据库表的 Display Maintenance Allowed with Restrictions
|
5月前
|
安全 API 数据库
SAP ABAP OData 中 Function import 的概念介绍
SAP ABAP OData 中 Function import 的概念介绍
|
5月前
|
SQL 负载均衡 监控
SAP ABAP DBSQL_SQL_ERROR 错误
SAP ABAP DBSQL_SQL_ERROR 错误
|
5月前
|
前端开发 数据库 开发者
如何在 SEGW 事务码里为 SAP ABAP OData 服务实现 Function Import 试读版
如何在 SEGW 事务码里为 SAP ABAP OData 服务实现 Function Import 试读版
SAP ABAP OData 服务里需要指定 guid 类型的请求参数时,正确语法是什么?
SAP ABAP OData 服务里需要指定 guid 类型的请求参数时,正确语法是什么?
|
5月前
|
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
|
5月前
|
存储 前端开发 Linux
在 SAP ABAP 系统里访问 FTP 服务器
在 SAP ABAP 系统里访问 FTP 服务器
|
5月前
|
存储 前端开发 应用服务中间件
使用 SAP ABAP 执行 FTP 操作
使用 SAP ABAP 执行 FTP 操作
|
5月前
|
BI 网络安全
如何使用 ABAPGit 在 SAP ABAP 系统安装 abap2xlsx 工具试读版
如何使用 ABAPGit 在 SAP ABAP 系统安装 abap2xlsx 工具试读版
|
5月前
|
监控 安全 应用服务中间件
SAP ABAP STRUST 事务码里的错误消息 - Local PSE does not match database original
SAP ABAP STRUST 事务码里的错误消息 - Local PSE does not match database original