본문 바로가기

SAP/실전

[참고] 순환 반복 구문

ABAP 프로그램에서 사용할 수 있는 순환 반복 구문은 3가지가 있다.

순환 반복 구문내에서 EXIT 명령을 만나면 순환 구문을 빠져나온다.

CONTINUE 명령을 만나면 이후 스크립트를 실행하지 않고 다음 순환을 실행한다.

CHECK 명령은 값을 비요하여 참일 경우에만 이후 구문을 수행하고 거짓이면 다음 순환을 실행한다.

 

1) DO ~ ENDDO 순환 구문

순환 횟수를 지정할 수 있는 구문이다. 회수를 지정하지 않으면 무한 LOOP를 수행한다.

현재 순환 횟수는 시스템 변수 SY-INDEX에 저장된다.

DO 3 TIMES.
~~~~~
ENDDO.

 

2)WHILE ~ ENDWHILE 순환 구문

WHILE 구문의 다음 표현식이 참이면 반복순환을 지속한다.

현재 순환 횟수는 시스템 변수 SY-INDEX에 저장된다.

WHILE gv_flag = 'x'.
~~~~
ENDWHILE.

 

3)LOOP~ENDLOOP 순환 구문

인터널 테이블의 라인을 차례대로 Work area 또는 header line으로 이동하는 순환 구문이다.

현재 순환 횟수는 시스템 변수 SY-TABIX에 저장된다. SY-TABIX는 인터널 테이블의 라인 번호 이다.

LOOP AT gt_itab TO gs_wa
~~~~
ENDLOOP.