ABAP内表(internal table)有关的系统变量
SY-TABIX – 内表当前行的索引号。SY-TABIX 的值可以被以下命令修改,但是只适用于索引表(index table)。对于哈希表(Hashed table),这个系统变量的值为空或0。
- APPEND 将 SY-TABIX 的值置为表最后一行的索引号,也就是说它将等于内表的行数。
等于增加一行数据之后内表的数据的行数
- COLLECT 将 SY-TABIX 的值置为现有或刚刚插入的行的索引号。如果内表为哈希(hashed table)表的话,SY-TABIX 被置为0。
- LOOP AT 将 SY-TABIX 的值置为每一次循环开始时的当前行索引号,在整个循环的结束时 SY-TABIX 被恢复为它在进入循环之前的值。对于哈希表(hashed table),它的值为0。
- READ TABLE 将 SY-TABIX 的值置为被读取的行的索引号。如果使用二分查找(binary search),而没有找到的话,SY-TABIX 将等于所有行数或行数加1。如果是使用顺序查找而没有找到的话,SY-INDEX 没有定义。
- SEARCH <itab> FOR 将 SY-TABIX 的值置为找到要查找字符串所在的行的索引号。
SY-TFILL — 在使用命令 DESCRIBE TABLE、LOOP AT、 和 READ TABLE之后,SY-TFILL 的值为相应内表的行数。
当在LOOP 中使用APPEND的时候,SY-TFILL 一直等于APPEND之前的值
SY-TLENG — 在使用命令 DESCRIBE TABLE、LOOP AT、和 READ TABLE之后,SY-TLENG 的值为相应内表的行的长度。
SY-TOCCU – 在使用命令 DESCRIBE TABLE、LOOP AT、和 READ TABLE之后,SY-TLENG 的值为相应内表所占用的内存。