본문 바로가기
ERP-SAP/ABAP

<ABAP> 유지보수뷰에 버튼 추가하기, 추가한 버튼에 이벤트 넣기(ADD BUTTON Maintenance view)

by 행복한워니의 기록 2024. 12. 13.
728x90
반응형

복잡하나 잘 따라오면 금방 할 수 있다.

먼저, 할일 요약해드린다.

1. SE41에서 User interface button을 눌러 내 펑션그룹으로 standard button 을 copy한다
(SAPLSVIM => MY Function group(SAPLYC_FG01))

2.내 펑션그룹으로 이동하여  copy 해서 가져온 것들 중 GUI _STATUS Folder에서 EULG 를 찾아 새버튼을 추가한다.

3. Se54 에서 내가만든 VIEW에 EVENT를 추가해 방금 수정한 STATUS 를 쓸 수 있게 지정한다.
(ST 선택후 내 펑션그룹으로 맵핑)

4. 새 버튼에 코딩을 넣어도 된다.

=====이 과정을 해보도록 하겠다.

1번과정.
내 View를 이미 만들었고 그 뷰에는 펑션그룹을 지정해서 만들어졌을거다..
그 펑션그룹에 STANDARD STATUS 를 가져올거다.

go:  se41

click user interface button
and copy saplsvim to (myfg)

myfg => SAPL + "YC_FG01"(FUNCTION GROUP NAME)


2.단계.
내 펑션그룹에 가면 못보던게 붙어있다.
EULG를 찾아 더블클릭하자

여기서 버튼을 추가한다.

난 POPUP 을 추가함



아래처럼 뷰에는 없던 텍스트를 다 넣어줘도 된다.
(example)


3번과정
위 만든 STATUS를 내 View에 붙여준다.
어디서? EVENT에서..

SE54로 이동하자
menu => Environment => Event  
click

caution!! 주의...
form routine에 뭘넣어야하나.어떤코딩을 넣어야 하나.. form은 어디다 만들지?
왜 안들어 가지? 가 아니다..

그냥.. JUST!!!
펑션그룹명을 넣는거다..
우리 스탠다드에서 카피해올때 넣었던것처럼..
저건 그냥 SAPL+ "YC_FG01" 이다.


다른 이벤트코딩 넣는것과 좀 다르지??
거긴 FORM 을 넣었는데..


그럼 과정이 끝났다. 뷰 테스트 해보시라..

아.. 추가한 버튼 이벤트 로직 어떻게 넣냐고?!
이건 다른분이 추가한 내용에 더 깔끔하게 있는데

요약하면 우리 테이블 메인터넌스 제너레이터에서 자동으로 스크린 만든곳에 가서 스크린 flow logic에 에 module 하나 추가하면 된다.

맨 아래처럼..

테스트로 팝업이 뜰 수 있게 했다.


자 그럼 테스트..

끝...

아래와같이 이런식의 버튼마다의 코딩도 가능하다
버튼명은 function으로 받아오더라




참조한 선배 블로그들

https://zevolving.com/2008/09/add-custom-button-on-maintianence-view-sm30/



https://community.sap.com/t5/application-development-blog-posts/how-to-create-custom-button-in-tmg/ba-p/13281007


728x90
반응형