1. DO ... ENDDO.
DO 5 TIMES.
WRITE: / 'Hello'.
ENDDO.
지정한 횟수만큼 반복하는 구문
- 순환횟수를 지정할 수 있는 구문.
- 회수를 지정하지 않으면 무한 LOOP수행
- 현재 순환횟수 시스템 변수는 SY-INDEX에 저장된다.
2. WHILE ... ENDWHILE.
DATA count TYPE i VALUE 1.
WHILE count <= 5.
WRITE: / count.
count = count + 1.
ENDWHILE.
조건이 참일 때 계속 반복
- WHILE구문의 다음 표현식이 참이면 반복순환을 지속함
- 현재 순환 횟수는 시스템 변수 SY-INDEX에 저장된다.
3. LOOP AT ... INTO ... ENDLOOP.
DATA: lt_text TYPE STANDARD TABLE OF string,
lv_text TYPE string.
APPEND 'Hello' TO lt_text.
APPEND 'World' TO lt_text.
LOOP AT lt_text INTO lv_text.
WRITE: / lv_text.
ENDLOOP.
- 인터널 테이블의 라인을 차례대로 Work AREA 또는 HEADER LINE으로 이동하는 순환구문
- 현재 순환횟수는 시스템 변수 SY-TABIX에 저장된다. SY-TABIX는 인터널 테이블의 라인 번호다.
주의할점:
- LOOP AT은 내부 테이블이 비어있으면 반복되지 않는다.
- DO 는 무한루프가 될 수 있어서 EXIT or 조건 처리가 필요하다
구문 | 용도 |
DO TIMES | 정해진 횟수만큼 반복 |
WHILE | 조건이 참인 동안 반복 |
LOOP AT | 내부 테이블을 순서대로 반복 |
'SAP' 카테고리의 다른 글
easy abap 21. Local-Macro, Global-Macro (0) | 2025.05.11 |
---|---|
easy abap 20. subroutine 종료 & 분기조건문 (0) | 2025.05.10 |
easy abap 18. subroutine (0) | 2025.05.10 |
easy abap 17. 파라미터 타입정의, 구조체, 인터널테이블, tables구문 (0) | 2025.05.10 |
easy abap 16. subroutine parameter- call by value, call by reference, call by value and result (0) | 2025.05.10 |