POPUP_TO_SELECT_MONTH은 연도와 월을 입력할 수 있는 POPUP창을 생성하는 Standard Function입니다.
먼저 Signature을 살펴보도록 하겠습니다.
위와 같은 Parameter를 가지고 있습니다.
공장 달력이나 공휴일 달력을 통해 선택할 수 있는 연도나 월을 지정할 수 도 있습니다.
간단한 설명은 여기서 마치도록 하고 예시 코드로 사용하는 방법을 설명하겠습니다.
DATA: gv_rcode TYPE sy-subrc,
gv_month TYPE n LENGTH 6.
"//Month Input Field"
PARAMETERS pa_month TYPE n LENGTH 6.
"//초기 현재 년도,월로 Month값 지정"
INITIALIZATION.
gv_month = sy-datum+0(6).
"//pa_month Input Field / F4 Help"
AT SELECTION-SCREEN ON VALUE-REQUEST FOR pa_month.
CALL FUNCTION 'POPUP_TO_SELECT_MONTH'
EXPORTING
actual_month = gv_month
factory_calendar = 'KR'
holiday_calendar = ' '
language = '3'
start_column = 8
start_row = 5
IMPORTING
selected_month = pa_month
return_code = gv_rcode
EXCEPTIONS
factory_calendar_not_found = 1
holiday_calendar_not_found = 2
month_not_found = 3
OTHERS = 4.
START-OF-SELECTION.
"//Return Code와 날짜 출력"
WRITE:/ gv_rcode, pa_month.
actual month(현재 월)의 gv_month 는 sy-datum의 시스템 필드의 형식의 변수이고, sy-datum+0(6)를 통해 기존 8자리에서 현재의 연도와 월만 보이도록 6자리로 줄였습니다. 해당 값은 처음 POPUP창을 띄울 때 들어가 있는 월을 지정할 수 있습니다. POPUP창에서의 나오는 연도와 달의 Drop Down List에서 선택 가능한 값은 function의 signature 에서 Factory Calender(공장 달력)와 Holiday Canlender(공휴일 달력)의 값으로 결정을 하는데 두 개의 Parameter의 Default값으로 SPACE인데 두 개의 Parameter가 전부 SAPCE일 경우 현재 년도에서 -50년 , + 50 년으로 Year의 Drop down list 값이 출력됩니다. 그리고 Factory_Calendar 와 Holiday_Calendar 에 모두 ID를 입력한다면 Factory_Calendar 의 ID 값에 따른 Year 범위가 출력 되기 때문에 공장 달력이 우선순위가 높은 것을 알 수 있습니다.
Language 파라미터는 POPUP에서 출력하는 언어를 선택 할 수 있습니다.
start_row와 start_column은 POPUP창의 위치를 조정할 수 있는 입력값입니다.
Return code는 사용자가 ✔ 를 선택하면 0를 반환하고, X을 선택하면 4를 반환합니다.
마지막으로 select_month Parameter에서는 선택한 연도와 월이 반환됩니다.
이상입니다.
위의 파일은 저희가 만든 자료입니다. 공유 시에 출처를 남겨주세요!
지금까지 읽어주셔서 감사합니다. 추가적인 피드백이 있으시면 댓글 달아주시면 감사하겠습니다!
'ABAP Standard Function' 카테고리의 다른 글
[ABAP] CONVERSION_EXIT_ALPHA_OUTPUT / Leading Zero 제거 (0) | 2024.12.20 |
---|---|
[ABAP] CLOI__PUT_SIGN_IN_FRONT / "-" 앞으로 가져오기 (0) | 2024.12.19 |
[ABAP] GET_DOMAIN_VALUES / Domain 정보 가져오기 (0) | 2024.12.18 |
[ABAP] REUSE_ALV_FIELDCATALOG_MERGE / Internal Table의 Field 정보 가져오기 (0) | 2024.12.17 |
[ABAP] LVC_FIELDCATALOG_MERGE / Dictionary table의 field정보 가져오기 (2) | 2024.12.12 |