🔁 DO 반복문(Loop)이란?
ABAP에서 특정 코드를 여러 번 반복 실행하고 싶을 때 사용하는 반복문.
✅ 기본 구조
DO.
"반복 실행할 코드" .
ENDDO.
⚠️ 주의!
조건을 넣지 않으면 무한 반복이 돼서 프로그램이 멈출 수 있음 -> overflow!
🧨 무한 루프 예시
DO.
WRITE: / 'HELLO'.
ENDDO.
- 이 코드는 "HELLO"를 끝없이 출력해서 멈출 수 없다.
- 실행하면 ABAP 프로그램이 멈추고 수동으로 종료해야 함
✅ 안전한 반복: DO n TIMES
DO 15 TIMES.
WRITE: / 'HELLO'.
ENDDO.
- HELLO를 정확히 15번만 출력
- n TIMES는 반복 횟수를 명확하게 지정하는 방법
🧮 카운터 예제 (변수 + 시스템 변수)
DATA a TYPE i.
a = 0.
DO 15 TIMES.
a = a + 1.
WRITE: / 'My counter:', a, 'SY-INDEX:', sy-index.
ENDDO.
=> 1부터 15출력!
🔎 여기에 나오는 포인트
요소 | 설명 |
a | 사용자가 선언한 변수. 직접 1씩 증가시킴 |
sy-index | 시스템에서 제공하는 루프 횟수 자동 추적 변수 |
WRITE | 현재 루프에서 두 변수의 값을 출력 |
- sy-index는 loop 시작할 때마다 자동으로 1 증가함
- a는 수동으로 a = a + 1 해줘야 함
- 둘 다 출력해서 비교 가능
🔚 정리
기능설명
DO ... ENDDO | 기본 반복문. 무조건 반복 (조건 없음) |
DO n TIMES | n번만 반복. 안전하고 추천되는 방식 |
sy-index | 시스템 내장 루프 카운터 (자동 증가) |
a = a + 1 | 직접 만든 카운터 (수동 증가) |
📌 실전 팁!
- 무조건 DO 10 TIMES.처럼 횟수 제한을 두고 사용해야함
- sy-index를 활용하면 디버깅하거나, 반복 횟수를 확인할 때 유용⭐️
'SAP' 카테고리의 다른 글
SAP ABAP Programming for Beginners - 46 While (0) | 2025.04.12 |
---|---|
SAP ABAP Programming for Beginners - 45 Nested Do Loops (0) | 2025.04.12 |
SAP ABAP Programming for Beginners - 43 Select 반복문 (0) | 2025.04.10 |
SAP ABAP Programming for Beginners - 42 CASE (0) | 2025.04.10 |
SAP ABAP Programming for Beginners - 41 Nested if (0) | 2025.04.10 |