300x250
728x90

# SAP EXIT, RETURN, STOP


# ABAP을 사용하면서 한 번쯤 쓰게 되는 구문들, 어느 때 이걸 쓰고 어느 때는 다른 걸 쓰고 무엇을 써야 할지 모르는 나 자신을 위해 만든 글

 

# Exit, Return, Stop문은  반복문에서 반복 종료를 하고 싶을 때 사용하거나, PERFORM or  Event Block 등등을 종료하는 데 사용되는 구문이다. 

 

 

# 위에 구문들을 알아보기 전


# 참고해야 할 것들이 있다.

그중에 Processing Block에 대해서 알고 있어야 이해하기 편하다.

 

Processing Block에서는 Dialog Modules, Event Block, Subroutines, Function Modules, Methods여러 가지 Block으로 나누어진다. 

 

여러 가지 Block이 많이 있지만.. 다 알고 넘어가고 싶으면 다음 URL 눌러보자.

https://help.sap.com/docs/SAP_NETWEAVER_731_BW_ABAP/cfae740a0a21455dbe6e510c2d86e36a/fceb2d67358411d1829f0000e829fbfe.html?version=7.31.21&locale=en-US

 

Processing Block과 기본 Block에 대해서 간단하게 알고 넘어가 보자.

 

# Event Block


# 빨간 상자는 Processing Block이다 

 

# 하나하나 Event  Block이다.

 

# PERFORM Block


# 빨간 상자는 Processing Block이다 

 

Subroutine Block이다.

 

# Function Module Block


# 빨간 상자는 Processing Block이다 

 

 Subroutine Block이다.

 

 

이 정도면 Processing BlockBlock에 대한 차이점이해했다고 생각하고 넘어가겠다.

 

한번 알아보자.

 

 

# EXIT 문 ( 반복문 일 때 )


# Event Processing Block종료 안 하고, 반복문만 종료하고 다음 로직으로 넘어가게 된다. 

 

# EXIT 문 ( 반복문 아닐 때 )


# PERFORM Block에서 EXIT  만났을 때는 

Processing Block종료하는 것이 아닌 Block만 종료하고 다음 로직으로 넘어간다. 

 

 

# Event Block에서 EXIT 만났을 때는

Event Processing Block종료시켜서 바로 LIST가 나오게 된다. 

 

# RETURN 문( 반복문 일 때 )


# 반복문을 탈출하고, 다음로직으로 넘어가는 것이 아닌 Event Processing Block종료해 버린다.

 

# RETURN 문( 반복문 아닐 때 )


# PERFORM Block에서 RETURN  만났을 때는 

# EXIT 다르게 Block종료 안 하고, PERFORM Processing Block을 종료시킨 뒤, 다음 로직으로 넘어간다. 

 

# STOP 문( 반복문 일 때 )


#반복문과 Event Block 종료하고, 다음 Evnet Block으로 넘어간다. 

 

# STOP 문( 반복문 아닐 때 )


# 웨이와 똑같이 Event Processing Block 종료 안 하고, Event Block을 종료하고, 다음 Evnet Block으로 넘어간다. 

 

 

도움이 되셨으면 하단에 있는 광고 한번씩 눌러주세유!!

 

끝.. 


# 로직

INITIALIZATION.


AT SELECTION-SCREEN OUTPUT.


AT SELECTION-SCREEN.


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

  STOP.

  DO 10 TIMES.
    IF SY-INDEX EQ 5.

*      exit
*      RETURN

    ENDIF.
    WRITE:/ SY-INDEX.
  ENDDO.


  WRITE:/ 'START-OF-SELECTION 끝'.

END-OF-SELECTION.

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



  PERFORM SY_INDEX.


FORM SY_INDEX .


  WRITE:/ 'PERFORM'.

* exit
*  RETURN.

ENDFORM.                    " SY_INDEX

 

 

728x90