[ABAP] CONTINUE, EXIT, STOP, CHECK 구문

SAPCO·2024년 5월 29일
0

- [ABAP]

목록 보기
14/18

1. CONTUNUE

반복문 바깥에서 사용 시 오류가 발생한다.

1-1. LOOP문 내에서 사용 시

  • 다음 내용을 skip하고 다음 반복문으로 이동함.
SELECT *
  FROM scarr
  INTO TABLE @DATA(lt_data)
    UP TO 10 ROWS.

LOOP AT lt_data INTO DATA(ls_data).

  IF SY-TABIX EQ 3.
    CONTINUE.
  ENDIF.

  WRITE : / sy-tabix.
ENDLOOP.

2. EXIT

1-1. LOOP문 내에서 사용 시

  • LOOP문 탈출.
SELECT *
  FROM scarr
  INTO TABLE @DATA(lt_data)
    UP TO 10 ROWS.

LOOP AT lt_data INTO DATA(ls_data).

  IF SY-TABIX EQ 3.
    EXIT.
  ENDIF.

  WRITE : / sy-tabix.
ENDLOOP.

1-2. SUBROUTINE 내에서 사용 시

PERFORM sub.

WRITE : / 'END'.

FORM sub.
  EXIT.
  WRITE : / 'PERFORM TEST'.
ENDFORM.

3. STOP

  • START-OF-SELECTION 하위 구문을 모두 종료시키고 곧바로 END-OF-SELECTIO을 실행한다.
START-OF-SELECTION.
  STOP.
  WRITE : / 'START-OF-SELECTION'.

END-OF-SELECTION.
  WRITE : / 'END-OF-SELECTION'.

4. CHECK

  • 참일 경우 하위 로직을 수행하고, 거짓일 경우 종료시키는 로직.
    현재 서브루틴 내 하위로직은 모두 종료시키고 서브 루틴을 탈출한다.
  • 조건을 넣어서 PROCESSING BLOCK을 탈출시킬 수 있다.

START-OF-SELECTION.
  PERFORM get_data.

END-OF-SELECTION.
  WRITE : / 'END-OF-SELECTION'.

FORM get_data.
  check ABAP_FALSE = ABAP_TRUE.
  WRITE : / 'GET_DATA'.
ENDFORM.

profile
SAP CO

0개의 댓글