abap 取数排序之后怎么取第一行
3个回答
展开全部
用索引读取 单行
要用索引从 内表中读取 单行,请使 用 READ 语句,用法 如下:
语法
READ TABLE <itab> [INTO <wa>] INDEX <idx>.
用 INTO 选项指定目 标区域 <wa>。 如果表格有 表头行,可 以忽略 INTO 选项。这样 ,表格工作 区域就成了 目标区域。
系统用索引 <idx> 从表格 <itab> 中读取行。 这比用关键 字访问表格 要快(参见 读取有关键字的单行 )。
如果找到有 指定索引的 条目,则将 系统字段 SY-SUBRC 设置为0, 而且 SY-TABIX 包含该行的 索引。否则 ,SY-SUBRC 包含非0值 。
如果 <idx> 小于或等于 0,则会发 生实时错误 。如果 <idx> 超过表格大 小,系统将 SY-SUBRC 中的返回代 码值设置为 4。
DATA: BEGIN OF ITAB OCCURS 10,
COL1 TYPE I,
COL2 TYPE I,
END OF ITAB.
DO 20 TIMES.
ITAB-COL1 = SY-INDEX.
ITAB-COL2 = 2 * SY-INDEX.
APPEND ITAB.
ENDDO.
READ TABLE ITAB INDEX 7.
WRITE: SY-SUBRC, SY-TABIX.
WRITE: / ITAB-COL1, ITAB-COL2.
其输出为:
0 7
7 14
在此创建有 表头行的内 表 ITAB, 并用20行 对其进行填 充。读取并 输出索引为 7的行。
要用索引从 内表中读取 单行,请使 用 READ 语句,用法 如下:
语法
READ TABLE <itab> [INTO <wa>] INDEX <idx>.
用 INTO 选项指定目 标区域 <wa>。 如果表格有 表头行,可 以忽略 INTO 选项。这样 ,表格工作 区域就成了 目标区域。
系统用索引 <idx> 从表格 <itab> 中读取行。 这比用关键 字访问表格 要快(参见 读取有关键字的单行 )。
如果找到有 指定索引的 条目,则将 系统字段 SY-SUBRC 设置为0, 而且 SY-TABIX 包含该行的 索引。否则 ,SY-SUBRC 包含非0值 。
如果 <idx> 小于或等于 0,则会发 生实时错误 。如果 <idx> 超过表格大 小,系统将 SY-SUBRC 中的返回代 码值设置为 4。
DATA: BEGIN OF ITAB OCCURS 10,
COL1 TYPE I,
COL2 TYPE I,
END OF ITAB.
DO 20 TIMES.
ITAB-COL1 = SY-INDEX.
ITAB-COL2 = 2 * SY-INDEX.
APPEND ITAB.
ENDDO.
READ TABLE ITAB INDEX 7.
WRITE: SY-SUBRC, SY-TABIX.
WRITE: / ITAB-COL1, ITAB-COL2.
其输出为:
0 7
7 14
在此创建有 表头行的内 表 ITAB, 并用20行 对其进行填 充。读取并 输出索引为 7的行。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询