ABAP

[SAP_ABAP] GUI_STATUS에 생성한 버튼이 보이지 않을 때

universe8 2022. 10. 25. 21:00

GUI_STATUS의 Function코드 비활성화↔활성화 하는 방법

ALV를 띄우는 screen100번 화면에  SAVE, BACK, EXIT, CANCLE 이렇게 네 개의 버튼을 만들어뒀는데, 프로그램을 실행해서 데이터를 조회해보니 안 만들어진 버튼이 있다.

빨간색 CANCEL버튼이 비활성화 되어있다.

ALV 조회화면인 screen 100번에 해당하는 GUI_STATUS에 가봤는데,

아래 그림의 Function속성 창과 같이 취소버튼(CANCEL)에 대한 코드는 잘 입력되어 있는데,

표준툴바에 적힌 [CANC] 글씨가 빨갛게 되어있다 면?

>> 해당 Function 코드가 비활성화 되어있는 상태이다.

[CANC] Function 코드가 비활성화 되어서 글씨가 빨간색으로 변했다.

아, 참고로  수정불가능한 상태의 조회화면(ctrl+F1) 에서는 아래와 같이 빨간글씨가 아닌 형광펜 칠한글씨?처럼 보인다!

GUI_STATUS의 조회화면(수정불가능)에서 '비활성화된 Function코드'는 그림처럼 표시된다.

비활성화된 버튼을 활성상태로 풀어주려면,

1. 수정가능한 수정화면으로 바꿔준 다음(단축키는 ctrl+F1)

2. 활성화(또는 비활성화)하고싶은 버튼에 커서를 둔 상태에서 

3. 상단 중앙에 표시된 [Function 코드] 버튼을 눌러준다!

[Function코드]버튼은 수정가능화면에서만 보인다.

그럼 하단 상태바에 [Function CANC을(를) 활성화했습니다.]라는 메세지가 뜨고 빨간색이었던 CANC버튼이 다시 검정색으로 변한것을 확인할 수 있다.

[Function CANC을(를) 활성화했습니다.

GUI_STATUS 화면을 활성화(active) 해준 다음(잊지말자!) 프로그램 실행해서 다시 ALV화면 조회해보면,

버튼이 활성화 되어있는것을 확인할 수 있다!

 

Function코드 비활성화↔활성화 방법은 GUI_STATUS를 배울때 분명히 배웠던 기능일텐데

잊고 있다가 분명히 만들어둔 버튼이 역으로? 안보이게 되니까 당황스러웠다... 이것저것 만지다가 잘못 누른듯...

 

결론: Function코드 비활성화를 해두면 제대로 만들어둔 버튼도 비활성화되어 안만들어진것처럼 보여질 수 있다!

반응형