본문 바로가기
프로그래밍/기타 프로그래밍

[SAP/ABAP] RETURN과 EXIT의 차이

by TaeGyeong Lee 2023. 11. 13.

Procedure

abap에서 procedure는 다음과 같은 종류를 가집니다.

  • Subroutine
  • Function module
  • Method

 

RETURN

상황에 관계없이 procedure에서 나갑니다.

#1 예제 코드

DO 5 TIMES.
  WRITE : / 'A'.

  DO 5 TIMES.
    WRITE : / 'B'.

    IF SY-INDEX = '3'.
      RETURN.
    ENDIF.
  ENDDO.

ENDDO.

#2 출력 결과

A
B
B
B

 

EXIT

반복문 안에서는 해당 반복문만을, 반복문 밖에서는 코드를 감싸는 procedure에서부터 나갑니다. 즉 일관적인 return과 다르게  상황에 따라 모호한 명령을 수행합니다.

#1 예제 코드

DO 5 TIMES.
  WRITE : / 'A'.

  DO 5 TIMES.
    WRITE : / 'B'.

    IF SY-INDEX = '3'.
      EXIT.
    ENDIF.
  ENDDO.

ENDDO.

#2 출력 결과

A
B
B
B
A
B
B
B
A
B
B
B
A
B
B
B
A
B
B
B

 

따라서, 반복문을 나갈 때에는 EXIT 명령을, 이외의 procedure를 나갈 때에는 RETURN 명령을 명확하게 구분하여 사용하는 것이 좋습니다.

 

참고 자료

 

Procedures

Procedures contain a set of statements, and are called from other ABAP programs.  You define procedures in ABAP programs. When the program is generated, they remain as standalone modules. You can call procedures in the program in which they are defined, o

help.sap.com

 

Exiting Procedures - ABAP Keyword Documentation

SAP NetWeaver AS ABAP Release 751, ©Copyright 2017 SAP AG. All rights reserved.   ABAP - Keyword Documentation →  ABAP Programming Guidelines →  Robust ABAP →  Modularization units →  Exiting Procedures Background You can exit procedures

help.sap.com