SAP 获取内表行数
DATA: LV_LINES TYPE INT4.
LV_LINES = LINES( GT_OUT[] ).
有3种方法。
(1) LOOP AT itab.
n = n + 1.
ENDLOOP.
该方法是通过循环内部表自己累加行数。
(2)DESCRIBE TABLE itab LINES n. 该语句通过获得内部表的属性,将内部表行数赋值给n,n为I型变量。
(3) n = lines( itab ). 使用函数来计算内部表行数。此函数由三部分构成。
1)函数名和左括号(其间没有空格);
2)处理对象内部表(与左右括号之间有空格);
3)右括号。
实例:
DATA:N1 TYPE I.
DATA:N2 TYPE I.
N1 = LINES( GT_T001 ).
N2 = LINES( GT_T024E ).
IF N1 >= N2.
LOOP AT GT_T001.
CLEAR:IT_TAB-BUKRS,IT_TAB-EKORG.
IT_TAB-BUKRS = GT_T001-BUKRS.
READ TABLE GT_T024E INDEX SY-TABIX.
IF SY-SUBRC = 0.
IT_TAB-EKORG = GT_T024E-EKORG.
ENDIF.
APPEND IT_TAB TO LT_TAB.
ENDLOOP.
ELSE.
LOOP AT GT_T024E.
CLEAR:IT_TAB-BUKRS,IT_TAB-EKORG.
IT_TAB-EKORG = GT_T024E-EKORG.
READ TABLE GT_T001 INDEX SY-TABIX.
IF SY-SUBRC = 0.
IT_TAB-BUKRS = GT_T001-BUKRS.
ENDIF.
APPEND IT_TAB TO LT_TAB.
ENDLOOP.
ENDIF.
文章来自于网络,如果侵犯了您的权益,请联系站长删除!