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
'프로그래밍 > 기타 프로그래밍' 카테고리의 다른 글
[SAP/ABAP] EVENT DATA_CHANGED 활용하여 ALV 체크박스(checkbox) 클릭 시 바로 반영하기 (0) | 2023.12.14 |
---|---|
[C++] vector <queue<int>> 그리고 vector<pair<int,int>> (1) | 2023.11.20 |
[SAP] client 입력 모드 변경 (insert / override) (0) | 2023.10.30 |
[SAP] 자주 사용하는 TCODE (1) | 2023.10.24 |
[C++] 우선순위 큐 priority_queue (1) | 2023.10.11 |