创建和处理内表

上传人:枫** 文档编号:486538570 上传时间:2023-04-02 格式:DOCX 页数:77 大小:195.94KB
返回 下载 相关 举报
创建和处理内表_第1页
第1页 / 共77页
创建和处理内表_第2页
第2页 / 共77页
创建和处理内表_第3页
第3页 / 共77页
创建和处理内表_第4页
第4页 / 共77页
创建和处理内表_第5页
第5页 / 共77页
点击查看更多>>
资源描述

《创建和处理内表》由会员分享,可在线阅读,更多相关《创建和处理内表(77页珍藏版)》请在金锄头文库上搜索。

1、8错误!未定义样式。 8: 88创建和和处理内内表概览内容什么是内内表内表的目目的内表的结结构标识表格格行访问内表表创建内表表创建内表表数据类类型创建内表表数据对对象使用内表表填充内表表读取内表表更改和删删除内表表行内表排序序创建次序序表循环处理理比较内表表初始化内内表本节讨论论内表。除字段段串外,内内表还构构成 AABAPP/4 提供的的另一种种结构化化数据类类型。本节主题题描述在处理内内表中大大量的数数据时,花花费的计计算机时时间对性性能来说说非常关关键。例例如,要要获得最最佳性能能,在“ABAAP/44 开发发工作台台”初始屏屏幕(或或事务 SE330)上选择择“测试 - 运行行时间分分

2、析”,在“内表”下选定定“提示 & 技巧巧.”,就会出出现有关关如何改改进性能能的不同同任务示示例。88什么是是内表下列主题题提供内内表简介介:88内表的的目的在 ABBAP/4 中中,主要要使用表表格。表表格是 RR/3 系统中中的关键键数据结结构。长长期使用用的数据据存储在在关系数数据库表表格中。关于如如何读取取和处理理数据库库表格的的详细信信息,参参见读取取并处理理数据库库表。除了数据据库表格格,还可可以创建建仅在程程序运行行时间内内存在的的内表。ABAAP/44 提供供了针对对内表的的不同操操作。例例如,可可以搜索索、附加加、插入入或删除除行。内表中的的行数并并不固定定。根据据需求,系

3、系统可实实时增加加内表的的大小。例如,如如果想将将某个数数据库表表格读入入内表,不不必事先先知道数数据库表表格的大大小。该该特征项项使得内内表使用用起来十十分方便便,同时时还支持持动态编编程。可以使用用内表在在数据库库表格的的子集上上执行表表格计算算。例如如,可以以将数据据库表格格的某个个部分读读入内表表(参见见将数据据读入内内表)。然后可可以从内内表中计计算总和和或生成成次序表表。内表的另另一种用用处是根根据程序序需要重重新组织织数据库库表格的的内容。例如,可可以从一一个或多多个大客客户表格格特定的的数据中中将与创创建电话话清单有有关的数数据读入入内表中中。然后后可在程程序运行行期间直直接访

4、问问该清单单,而不不用每次次调用时时都执行行耗时的的数据库库查询。除了在使使用来自自数据库库表格的的数据时时使用内内表外,内内表还是是 ABBAP/4 中中用于在在程序中中实现许许多复杂杂数据结结构的重重要特征征项(参参见结构化化数据类类型 (页366) )。88内表的的结构在 ABBAP/4 中中,可以以区别内内表数据据类型(定定义内表表的结构构)和内内表数据据对象(实实际的内内表而且且可以用用数据进进行填充充)。内内表数据据类型是是数据结结构(可可用于将将数据对对象说明明为内表表)的抽抽象定义义。关于于数据类类型和数数据对象象之间区区别的详详细信息息,参见见声明数数据 (页311) 。数据

5、类型型内表是 ABAAP/44 中两两种结构构化数据据类型中中的一种种。其它它结构化化数据类类型是字字段串(参参见结构化化数据类类型 (页366) )。内表包包括任意意数据类类型相同同的行。行的数数据类型型可以是是基本的的或结构构化的。该定义义打开了了多种内内表结构构,范围围从包含含一个字字段的行行到包含含字段串串将内表表作为组组件的行行。可以用带带 OCCCURRS 参参数的 TYPPES 语句将将数据类类型定义义为内表表(参见见创建内内表数据据类型 (页8) )。定义数数据类型型时不占占用内存存。数据对象象数据对象象包含定定义为内内表的数数据类型型,是实实际使用用的内表表。数据据对象占占用

6、内存存,可以以对其行行进行填填充或读读取。可以使用用带 OOCCUURS 参数的的 DAATA 语句,或或使用 TYYPE 或 LIIKE 参数引引用另一一个内表表将数据据对象创创建为内内表(参参见创建建内表数数据对象象 (页8) )。88标识表表格行为了访问问表格的的某一行行,必须须指定可可用于标标识该行行的字段段或组合合字段。在关系系数据模模型(用用于在 RR/3 系统中中存储长长期使用用的数据据)中,用于该目的的最小组合称为关键字。定义关键字的字段称为关键字段。在关系数数据模型型中,每每个表格格至少有有一个关关键字(参参见文档档ABAAP/44 词典典 (页Errror! Noot aa

7、 vaalidd liink.) )。特殊唯唯一关键键字段的的该概念念不用于于内表。但是 AABAPP/4 提供了了下列特特征项以以便用户户访问内内表行:88内表索索引索引是是表格行行的序列列号,不不是表格格字段,但但由系统统自动创创建和管管理。可以用 DELLETEE、INSSERTT、MODDIFYY、LOOOP 和和 REEAD 语句来来使用索索引。在在这些语语句中,可以将索引指定为文字或变量。处理完内内表的特特定行后后,系统统字段 SY-TABBIX 一般包包含该行行的索引引。88内表关关键字有两种种类型的的内表关关键字。自定义关关键字使用 RREADD 语句句从内表表中读取取行时,可

8、可以指定定自定义义关键字字(参见见用自定定义关键键字读取取单行 (页8) )。缺省关键键字根据定义义,内表表的关键键字段是是非数字字(类型型 F、I 和 P)和和非内表表的字段段。这些些关键字字段形成成内表的的标准关关键字。要获得带带嵌套结结构(包包含字段段串作为为组件的的表格行行)的内内表标准准关键字字,系统统将子结结构分为为基本字字段层次次。根据填充充内表的的方式不不同,内内表可以以包含带带相同标标准关键键字的多多行。用 COOLLEECT、REAAD、SORRT 和和 SUUM 语语句使用用内表的的关键字字段。如如果标准准关键字字段是内内表行的的第一个个组件,这这有助于于提高这这些语句句

9、的效率率。创建建内表时时请记住住这一点点。88访问内内表内表是按按行进行行访问的的。必须须使用某某个工作作区域作作为与表表格互相相传输数数据的接接口。工作区域域对内表表的行必必须是可可转换的的(关于于可转换换性的详详细信息息,参见见类型转转换 (页6336) )。从内表中中读取数数据时,已定址的表格行内容覆盖工作区域的内容。然后可以在程序中引用工作区域的内容。将数据写入内表时,必须首先在工作区域(从中系统可以将数据传输给内表)中输入数据。为了避免免不一致致,最好好是工作作区域与与内表行行有相同同的数据据类型。创建与与内表兼兼容的工工作区域域的一种种安全步步骤是在在说明内内表和工工作区域域时使用

10、用相同的的数据类类型。在该环境境中,可可以区分分 ABBAP/4 中中两种类类型的内内表的差差别:_ 带带表头行行的内表表_ 不不带表头头行的内内表如果创建建带表头头行的内内表(参参见创建建内表 (页8) ),系系统自动动创建与与内表行行数据类类型相同同的工作作区域。该工作作区域称称为表头头行或表表格工作作区域,对对内表的的作用与与由 TTABLLES 语句创创建的数数据库表表格工作作区域相相同(参参见TAABLEES 语语句 (页3220) )。表表格工作作区域和和内表本本身同名名。在所有用用于访问问内表的的 ABBAP/4 语语句中,可可以指定定要使用用的工作作区域(参参见使用内表表 (页

11、8) )。对于带带表头行行的内表表,可以以忽略这这一指定定。这样样,系统统隐式使使用表格格工作区区域:不带表头头行的内内表没有有可以隐隐式使用用的表格格工作区区域。要要访问没没有表头头行的内内表,必必须在相相应的 AABAPP/4 语句中中显式指指定工作作区域。决定创建建的内表表是否带带表头行行时,必必须考虑虑是喜欢欢隐式还还是显式式用于内内表访问问的工作作区域。请记住,对对于带表表头行的的内表,内内表本身身和表格格工作区区域同名名。如果果在语句句中使用用该名称称,系统统将其解解释为表表格工作作区域的的名称,而而不是表表格本身身(对于于将数据据读入内内存或从从内存中中读取数数据的语语句,这这一

12、点例例外,参参见ABBAP/4 内内存中的的数据簇簇)。但但在某些些语句中中,可以以在名称称之后输输入方括括号,定定址内表表而不是是表格工工作区域域,如下下所示:。88创建内内表创建内表表时,可可以决定定是想先先用TYYPESS 语句句创建内内表数据据类型,然然后再创创建具有有该类型型的数据据对象,还还是想直直接使用用 DAATA 语句创创建内表表数据对对象。既既可以创创建带表表头行的的内表数数据对象象,又可可创建不不带表头头行的内内表数据据对象。下列主题题描述88创建内内表数据据类型要创建内内表数据据类型,请使用 TYPES 语句,用法如下(参见TYPES 语句 (页322) ):语法TYP

13、EES OCCCURRS .该语句通通过使用用 TYYPESS 语句句的 OOCCUURS 选项创创建一个个内表数数据类型型 。内内表中行行的数据据类型在在 中中指定。要指定定行的数数据类型型,可以以使用 TYPPE 或或 LIIKE 参数(参参见DAATA 语句的的基本格格式 (页3114) )。通过使用用 LIIKE 参数引引用 AABAPP/4 词典中中定义的的对象,可可以创建建内表,其其行结构构与存储储在词典典中的对对象相同同且反映映数据库库表格的的结构。这在读读取和处处理数据据库表格格时非常常重要(参参见读取取并处理理数据库库表)。 指定行行的初始始号。将将第一行行写入用用类型 创建

14、的的内表数数据对象象之后,就就为指定定行保留留了内存存。如果果添加到到内表中中的行比比 指指定的要要多,则则自动扩扩展保留留的内存存。如果果内存中中没有足足够空间间可用于于内表,则则将其写写入缓冲冲区或磁磁盘(分分页区域域)。TYPEES VVECTTOR TYPPE II OCCCURRS 110.本示例创创建内表表数据类类型 VEECTOOR,其行包包含基本本类型 I 字字段。TYPEES: BEGGIN OF LINNE, CCOLUUMN11 TYYPE I, CCOLUUMN22 TYYPE I, CCOLUUMN33 TYYPE I, ENDD OFF LIINE.TYPEES IITABB TYYPE LINNE OOCCUURS 10.本示例创创建内表表数据类类型 ITTAB,其行与与字段串串 LIINE 结构相相同。TYPEES VVECTTOR TYPPE II OCCCURRS 110.TYPEES: BEGGIN OF LINNE, CCOLUUMN11 TYYPE I, CCOLUUMN22 TYYPE I, CCOLUUMN33 TYYPE I, ENDD OFF LIINE.TYPEES IITABB TYYPE LINNE OOCCUURS 10.TYPEES: B

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 商业计划书

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号