网站大量收购独家精品文档,联系QQ:2885784924

ABAP内表操作.docx

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ABAP内表操作

ABAP内表操作ABAP中的内表相当于其他程序设计语言中的二维数组,存储多行结构相同的数据不同于二维数组,内表在创建后,列结构与列数是固定不变的,而行数是动态增长的?内表支持循环对每行数据进行操作,也支持整体操作?内表是具有行和列的表结构,然而,不同于数据库表,内表仅在程序运行期间在内存中存储数据ABAP中有三种内表类型:标准表,哈希表,排序表- ABAP内表数据类型?内表数据对象是实际的内表,可以用数据进行填充?内表数据类型是用于定义内表数据对象的抽象数据类型(ADT)?可以使用的内表数据类型有:?Structure ?数据库表?用户自定义数据类型-ABAP内表声明1TYPES: BEGIN OF line, ?????? field1 TYPE i,?????? field2 TYPE i, ?????? END OF line. 声明一个数据类型DATA: ITAB_WA TYPE(LIKE) line.??? “ 声明一个内表工作区DATA: ITAB TYPE(LIKE) line OCCURS 0.? “ 声明一个无工作区的内表DATA: ITAB TYPE(LIKE) STANDARD TABLE OF line INITIAL SIZE 0.?? “ 声明一个有工作区的内表DATA: ITAB TYPE(LIKE) line OCCURS 0 WITH HEADER LINE. DATA: ITAB TYPE(LIKE) STANDARD TABLE OF line INITIAL SIZE 0 WITH HEADER LINE. 2DATA:? BEGIN OF line, ?????? field1 TYPE i, ?????? field2 TYPE i, ?????? END OF line. * 声明一个line对象,该对象可以作为工作区使用* 用DATA定义的line本身也是一个结构类型,也可再声明一个工作区DATA: ITAB_WA TYPE(LIKE) line.?? “ 声明一个工作区DATA: ITAB TYPE(LIKE) line OCCURS 0 WITH HEADER LINE.? “ 声明一个带工作区的内表DATA: ITAB TYPE(LIKE) STANDARD TABLE OF line INITIAL SIZE 0 WITH HEADER LINE . “ 声明一个带工作区的内表3 直接定义内表,这个内表是有工作区的DATA: BEGIN OF ITAB OCCURS 0 ,????? CARR1 LIKE SPFLI-CARRID, ????? CONN1 LIKE SPFLI-CONNID, ????? END OF ITAB. * DATA: ITAB1 TYPE ITAB.(错误的,实践证明,定义出来的什么都不是)。正确方法:ITAB1 TYPE ITAB OCCURS 0.(这样定义后的是一个无工作区的内表)。DATA: ITAB1 LIKE ITAB OCCURS 0 WITH HEADER LINE.? “定义一个带工作区内表4 type ref to 定义内表type ref to 属于ABAP中面向对象的编程。它是定义一个类的对象。5通过数据库表定义data itab1 type table of sflight . “ 定义一个不带内表的工作区data wa1 like line of sflgit? .??? “ 定义一个内表工作区data itab1 type table of sflight with header line . “定义一个带内表的工作区两种内表定义方式的主要区别在于是否有隐式表头行内表是按行进行访问的,然而,程序对内表的行操作不能直接进行,必须使用一种接口来传输,这个接口就是工作区(Work Area)内表操作1、填充内表行append wa to itab?? “不带表头行的填充append itab??????????????? “带隐式表头行的填充2、插入内表行insert wa into itab [INDEX idx]??? “insert itab [INDEX idx ]?????????????????? “隐式表头行插入内表-- 如果没有指定INDEX ,则默认插入到内表最后一行3、读取内表行read itab into wa [INDEX idx]? read itab [INDEX IDX]? 4、修改内表行modify itab from wa [INDEX idx] modify itab [INDEX idx] -- read itab index 3 . -- itab-XX = ‘xxx’ . --

文档评论(0)

hhuiws1482 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:5024214302000003

1亿VIP精品文档

相关文档