SAP BASIC
[02] SY-TABIX 와 SY-INDEX ( what is the difference between sy-tabix and sy-index )
0v0_삐약
2024. 7. 15. 16:17
728x90
SYSTEM 변수 중 가장 헷갈리는 것 중 하나가 SY-TABIX와 SY-INDEX다 .
두 변수의 차이를 알아보자.
SYST 테이블에서 INDEX, TABIX 필드는 각각 INT4 , length 10으로 동일한 타입으로 생성되어있다.
다만 Description은 두 변수에 차이가 있고,
INDEX : Loop Index
TABIX : Row Index of Internal Tables 인 것을 알 수 있다.
1. gt_scarr의 데이터 수만큼 DO
SY-TABIX : 1
SY-INDEX : DO 문을 돌 때 마다 +1 되어 1~19까지 출력
![]() |
![]() |
2. WHILE
SY-TABIX : 1
SY-INDEX : +1 되어 1~9까지 출력
![]() |
![]() |
3. gt_scarr LOOP
SY-TABIX : LOOP 돌때마다 +1씩 추가되어 1~19까지 출력,
SY-INDEX : 0 으로 출력
![]() |
![]() |
4. gt_scarr LOOP 돌며 특정 데이터를 찾는 조건문 추가
SY-TABIX : 10
SY-INDEX : 0
![]() |
![]() |
+ 추가
5. LOOP / READ TABLE
SY-TABIX : 조건에 부합하는 행의 index로 변경
SY-INDEX : 0
![]() |
![]() |
정리하자면
구분 | 사용 |
SY-INDEX | DO/WHILE 몇 번째 돌고 있는지( 반복문에서 몇 번째로 돌고있는지, 루프 카운터 ) |
SY-TABIX | LOOP 안의 행 번호 ( Access 중인 ITAB의 레코드 인덱스 ), READ TABLE |

728x90