`

ABAP 内表(internal table) 标题行(header line) 工作区(work area) 简介

阅读更多

是用TYPES关键字定义一个行(row)的类型.如下:
TYPES: BEGIN OF line,
  field1 TYPE i,
  field2 TYPE i,
END OF line.

这里的line,就相当于一个自定义的类型,表示一行(row)的字段(field).

 


这里一行有两个字段field1和field2.

然后是声明一个work area:
DATA wa TYPE line.

line是一个class,而wa是一个object.

 

接着是声明一个每一行的类型是line的internal table:
DATA itab TYPE line OCCURS 0.

 

 

 

OCCURS作为了区别工作区和内表的标志.

当我们用以上这个方法来声明一个iternal table时,可以选择是否有无header line.
上面这句就是没有header line的.改成如下就有了:
DATA itab TYPE line OCCURS 0 WITH HEADER LINE.


有无header line的区别就是,header line可以当作一个work area来使用.
有一下两种方式操作itab:
1).
wa-field1 = 1.
wa-field2 = 2.
APPEND wa TO itab.

2).
itab-field1 = 1.
itab-field2 = 2.
APPEND itab.

这里wa就是上面那个已经定义的work area.



OCCURS被认为是old的东西,采用一下方式声明一个内表比较好:
DATA itab TYPE STANDARD TABLE OF line.

 


如果没有OCCURS 0,比如这样:
DATA: BEGIN OF itab,
              field1 TYPE i,
              field2 TYPE i,
          END OF itab.

那么这个itab就不是内表咯,只是一个structure,可以作为itab的work area.

写到这里发现,归根到底就是TYPES和DATA这两个关键字的区别嘛.
还有有无OCCURS的区别.

分享到:
评论

相关推荐

    SAP应用及ABAP开发最佳实践—Internal Table.pdf

    在ABAP中,通常通过工作区(Work Area)来操作内部表中的行数据。工作区必须能够与内部表中的行进行转换,以确保数据的一致性和安全性。定义工作区的方法如下: ```abap DATA wa LIKE LINE OF itab. ``` 此外,还...

    abap內表 工作区 的定义和区别

    在ABAP编程中,理解和掌握工作区(Work Area)与内表(Internal Table)的概念及其差异至关重要。工作区和内表都是ABAP中用于存储数据的结构,但它们的使用场景和特性有所不同。 ### 工作区(Work Area) 工作区在...

    abap内表使用方法

    ABAP 内表使用方法 ABAP 内表是一种非常重要的数据结构,它可以存储和处理大量的数据。在 ABAP 程序中,内表是使用 TABLE 语句或 DATA 语句定义的。ABAP 内表可以用来存储和处理大量的数据,例如从数据库中读取的...

    ABAP内表创建整理

    在某些情况下,我们可能希望创建一个工作区(Work Area),它具有与内表相同的结构,然后使用这个工作区来声明内表。例如: ```abap DATA: wa_table LIKE LINE OF lt_table. DATA: it_table TYPE TABLE OF lt_...

    ABAP动态内表使用的例子

    在ABAP编程语言中,动态内表(Dynamic Internal Tables)是一种非常灵活的数据结构,它允许程序员在运行时定义和操作内表。与静态内表相比,动态内表提供了更多的灵活性,尤其是在处理不确定的数据结构时更为实用。...

    SAP ABAP动态内表构建与例子

    2. **使用工作区**:可以创建一个工作区(WORKAREA),将内表的数据复制到工作区,然后在其他地方使用。这样可以避免直接修改原始内表,提高代码的可读性和安全性。 3. **使用引用(REF TO)**:可以创建一个引用...

    ABAP三种内表区别

    Internal Table 是 ABAP 中最基本的一种内表,它是通过在内存中分配一定的空间来存储数据的。Internal Table 的优点是可以快速地存储和访问数据,但是它的缺点是占用内存空间较大。当我们需要存储大量数据时,...

    关于SAP内表及工作区

    在 SAP ABAP 编程中,内表(Internal Table)和工作区(Work Area)是两种重要的数据结构,它们在处理和操作数据时起到关键作用。理解它们的区别和正确使用方式对于编写高效的 ABAP 代码至关重要。 首先,内表是 ...

    ABAP Code Sample for ALV Grid from Dynamically Created Internal Table

    在ABAP编程中,ALV Grid(List Viewer)是一种常用的数据展示工具,它可以将数据以表格形式呈现,具有良好的用户界面和交互性。本示例代码展示了如何动态创建内部表,并将其数据填充到ALV Grid中,适用于处理各种...

    abap 内表效率问题

    在ABAP编程语言中,内表(Internal Tables)是存储数据的一种重要结构。根据不同的应用场景,开发人员可以选择使用标准内表(Standard Table)或排序内表(Sorted Table)。本文将深入探讨这两种内表类型的性能差异...

    ABAP Table表或结构的总结

    - ABAP中定义Table的基本语法为:`TYPES: t_table TYPE STANDARD TABLE OF structure_name WITH EMPTY KEY.` 其中,`t_table`是Table的名称,`structure_name`是构成Table中每一项的结构名。 - `WITH EMPTY KEY`...

    ABAP动态内表的收集

    2. 创建数据类型为`ref to data`的变量`dy_table`和`dy_line`,它们将用于存储动态内表的引用。 3. 使用`call method cl_alv_table_create=>create_dynamic_table`方法创建动态内表,传入列结构`ifc`,并导入动态表`...

    ABAP 内表复习与强化

    在ABAP中,内表(Internal Table)是一种非常重要的数据结构,它允许程序员存储和处理大量数据。本节将深入探讨ABAP内表的创建、填充以及从数据库读取信息到内表的方法。 首先,我们来看创建内表的方式。内表可以...

    abap table

    - 内部表(Internal Table):内存中的临时数据结构,可以动态调整大小,是ABAP编程中最常用的数据结构。 - 数据库表(Database Table):存储在数据库中的永久性表,如透明表、视图、簇表等。 - 透明表...

    ABAP中的Table_Control编程

    当定义了一个Table Control并指定了相关的内表和工作区时,系统会在PBO (Process Before Output) 阶段自动地将内表中的数据行逐一加载到工作区,并将其转换为屏幕元素。这意味着Table Control的每一行实际上是与工作...

    ABAP中使用TABLE CONTROL 显示数据以及操作要点小结

    ABAP中使用TABLE CONTROL 显示数据以及操作要点小结,一个完整demo

    第07章 表控制Table Control设计.rar_ABAP实战_Table_表控制Table Control设计

    在ABAP编程中,表控制(Table Control)是一种强大的用户界面元素,用于显示和编辑数据库或内存中的数据。本章将深入探讨如何设计和使用表控制,包括通过向导创建和非向导式方法,以及如何实现数据表的维护和内表...

    SAP ABAP动态内表总结

    field-symbols: <dyn_table> type standard table, ” 内表结构 , ” 表头 <dyn_field>. ” 项 data: dy_table type ref to data, dy_line type ref to data, ” 行 xfc type lvc_s_fcat, ” 列结构 ifc ...

    SAP数据表大全ABAP数据表大全

    本资料集“SAP数据表大全ABAP数据表大全”显然提供了关于ABAP数据表的详尽资源,对理解SAP系统的数据结构和数据库操作具有重要意义。 1. **ABAP数据表的类型**: - 透明表:这是最常见的一种数据表类型,数据直接...

    sap_ABAP-动态内表

    SAP ABAP 动态内表详解 SAP ABAP 中的动态内表是一种特殊的内表结构,它可以根据实际情况动态地生成和赋值。本文将详细介绍动态内表的创建、赋值和读取显示。 动态内表的创建 动态内表的创建主要分为两步:首先...

Global site tag (gtag.js) - Google Analytics