# 이 글을 쓰기 위해서...
제목을 뭐라고 지어야 할지 블로그 하면서 제일 고민이 되는 글이었다...
- 동적 라디오 버튼
- 동적 조건...?
- 스크린 동적
- 라디오 버튼으로 스크린 제어
- 라디오 버튼 활성화 or 비활성화
등등..
그래서 내린 결론이 라디오 버튼에 따른 스크린 제어가 나온 것이다...
# 후배 의견이었지만..
시나리오) 선택 화면에서 데이터 업로드 화면과 데이터 조회 화면을 나누어주세요.
- 데이터 업로드 : 파일 경로를 받는 Parameter
- 데이터 조회 : 항공사코드와 항공사 이름을 받는 Parameter
바로 시작해 보자.
TOP 선언
1. 데이터 업로드 조건( Excel 경로 )과 데이터 조회 조건( SCARR 조건 )을 TOP에다 선언을 해보자.
여기서 중요한 것은 MODIF ID이다.
MODIF ID을 통해서 Screen Group을 지정할 수 있으며,
Screen Group을 통해서 동적으로 SCREEN-ACTIVE을 할 수 있다.
2. 조건에 따라서 선택할 수 있게 라디오 버튼을 추가해 보자.
여기서 또한 중요한 것은 물론 Radiobutton Group도 중요하지만 더 집중적으로 봐야 할 것은 USER_COMMAND이다.
USERR_COMMAND을 통해서 FCODE를 사용할 수 있다.( UCOM == FCODE )
FCODE는 최대 20자까지 지정할 수 있으며 선택 화면에서 이벤트가 발생할 수 있도록 임의로 지정해 준다고 보면 된다.
결론은
FCODE가 없으면 AT SELECTION-SCREEN OUTPUT에서 라디오 버튼을 변경을 하더라도 변경이 안된다고 보면 된다.
SELECTION-SCREEN BEGIN OF BLOCK BL2
WITH FRAME TITLE TEXT-BL2.
SELECTION-SCREEN BEGIN OF LINE.
" 데이터 업로드 "
SELECTION-SCREEN POSITION 25.
PARAMETERS PA_FUP RADIOBUTTON GROUP GR1 USER-COMMAND UCOM1 DEFAULT 'X'.
SELECTION-SCREEN COMMENT (10) FOR FIELD PA_FUP.
" 데이터 조회 "
SELECTION-SCREEN POSITION 75.
PARAMETERS PA_SCA RADIOBUTTON GROUP GR1.
SELECTION-SCREEN COMMENT (10) FOR FIELD PA_SCA.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF BLOCK BL2.
2-1. 만약 위에 라디오 버튼 가로 로직에 대해서 자세한 내용을 알고 싶으면, 밑 링크를 확인해 보자.
2023.06.21 - [.SAP/..ABAP] - SAP Radio Button( 라디오 버튼 ) or Check Box( 체크 박스 )가로 배치하기
AT SELECTION-SCREEN OUTPUT 선언
1. 라디오 버튼에 따라서 변경되는 로직이다. TOP에서 선언했던 Group을 사용해야 한다.
SCREEN_ACTIVE는 해당 Screen에 Group 필드를 비활성화시키는 로직이다.
그래서 PA_FUP( 데이터 업로드 ) 일 때 SCARR 조건 비활성화
PA_SCA( 데이터 조회 ) 일 때 Excel 경로 비활성화
여기서 중요한 것은 MODIFY SCREEN을 꼭 해줘야 한다.
실행결과
# 데이터 업로드
# 데이터 조회
끝.
도움이 되셨으면 하단에 있는 광고 한번씩 눌러주세유!!
파일 경로, 선택에 대해서 알고싶으면
2023.07.10 - [.SAP/..ABAP] - SAP 파일 선택 or 파일 경로 알아보기
혹여나 TabStrip을 통해서 조건을 나누고 싶으면 밑에 링크 확인해 보면 된다.
2022.08.11 - [.SAP/..ABAP] - SAP TabStrip(Report Program) 정리
'.ABAP > ..모든 것' 카테고리의 다른 글
SAP 파일 선택 or 파일 경로 알아보기 (2) | 2023.07.10 |
---|---|
SAP Number Range 현재 번호 확인 방법 ( 라인 추가 버튼 ) (20) | 2023.06.23 |
SAP Radio Button( 라디오 버튼 ) or Check Box( 체크 박스 ) 가로 배치하기 (16) | 2023.06.21 |
SAP Table 데이터 유효성 검사 방법 (2) | 2023.06.15 |
SAP Transparent Table 데이터 생성, 입력하기 ( CRUD ) (0) | 2023.06.11 |