300x250
728x90

# WatchPoint란 


# 쉽게 말해서 디버깅을 하면서 변수에 조건을 걸어줘서 사용자가 원하는 값이 나올 때 알아서 멈춰주는 것이 WatchPoint이다. 

 

# ABAP 디버깅을 하면서 유용하게 쓰이는 것이 WatchPoint이고, 이 기능을 잘 활용을 하면 시간도 절약할 수 있다!

# 디버깅을 하면서 보고 싶은 값이 나올 때까지 버튼 하나하나 누르는 사람에게 알려주자. 

 

 

# 언제 사용하는가 


# 예를 들어) 

- 10만 건의 데이터가 있다고 하면, 그중 안에서 50006 번째 데이터를 보고 싶다거나

- 내가 원하는 변수가 값에 따라서 바뀌게 되는 시점을 보고 싶을 때

- 데이터가 언제 클리어가 되는지 등등..

 

 

시작해 보자.

 

 

WatchPoint(왓치 포인트) 실습, 사용법을 알아보자


# 다음과 같이 136번째에 LV_POINT 값을 알고 싶을 때 방법( 간단 )

DATA:
  LV_POINT(100) VALUE 2.

DO 200 TIMES.

  LV_POINT = 2 + LV_POINT.


ENDDO.

WRITE LV_POINT.

 

# 1. 우선 디버깅을 걸어보자.

 

# 2. 상단에 있는 WatchPoint을 클릭해 보자.

 

# 3. 그럼 다음과 같이 WatchPoint 설정하는 화면이 나올 것이다. 

 

# WatchPoint Type에서는 Variable(변수) or Object(객체) 해당 상황에 맞게 선택을 해주면 된다. 

 

# 4. 우리가 봐야 할 것은 상단에 있는 Varuable 부분과 밑에 부분인 Free Condition Entry: 부분이다. 

 

# 5. 이제 우리가 보려고 했던 136번째의 LV_POINT값을 보는 조건문을 걸어줘야 한다.

# DO문이기 때문에 SY-INDEX로 136번째를 찾을 것이다. 

# Varuable(변수) : SY-INDEX로 찾아야 하기 때문에 다음과 같이 넣어주자.

# 다음과 같이 IF문을 안 쓰고도 이렇게 써서 조건문을 사용할 수 있다. 

 

Free Condition Entry 예시는 다음과 같이 상황에 따라 사용하면 된다. 

 

# 6. WatchPoint가 잘 적용이 되었는지 보고 싶으면 디버깅 화면에서 탭스트릿을 보면 Break./WatchPoints을 클릭하면 볼 수 있다. 

 

# 7. 실행을 시켜보자. 여기서 F5, F6을 누르는 것이 아닌 F8을 눌러줘야 된다.

그럼 다음과 같이 Watchpoint reached (SY-INDEX)라는 메시지가 뜨면 성공이다.

 

# 물론 SY-INDEX 말고도 GS_LIST-CARRID 이런 식으로 사용할 수 있다는 점도 참고 바란다 

 

이런 식으로 WatchPoint을 잘 이용을 한다고 하면 유용한 기술이라고 생각한다.

 

 

 

728x90