ABAP Standard Function

[ABAP] WEEK_GET_FIRST_DAY / 해당 주차의 월요일 날짜 가져오기

ASAP ABAP 2025. 1. 13. 18:02
반응형

앞에서 설명한 "GET_WEEK_INFO_BASED_ON_DATE" Function Source code에서도 쓰인 "WEEK_GET_FIRST_DAY"를 소개하겠습니다.

 

기능설명

"WEEK_GET_FIRST_DAY" Function은 사용자로부터 년도와 해당 년도의 몇 번째 주인지 입력을 받으면 해당 주의 월요일이 몇 일인지 알려주는 기능을 수행한다.

 

Signature

Importing Parameter
Exporting Parameter
Exception Parameter

예시 코드

REPORT zweek_01.
DATA: lv_monday TYPE sy-datum.
PARAMETERS: p_monday TYPE n LENGTH 6.
START-OF-SELECTION.
CALL FUNCTION 'WEEK_GET_FIRST_DAY'
	EXPORTING
		week = p_monday
	IMPORTING
		date = lv_monday.
IF sy-subrc = 0.
	WRITE:/ p_monday, '번째 주의 월요일은', lv_monday.
ELSE.
	WRITE:/ '날짜 추출 실패'.
ENDIF.

실행 화면

2024(주차 수) 입력
2024년도(47주차) 11.18일

주의 사항

  • 값을 입력할 때 2024.01.23와 같이 날짜(YYYY.MM.DD)를 입력해서 그 날짜에 해당하는 주의 월요일을 구해주는 것이 아니라 1년은 52주 이므로 각 202447(YYYYMM) 이런 방식으로 년도와 주차를 입력하면 해당 주차의 월요일이 몇 일인지 알려줍니다.
  • 1년은 52주이기 때문에 52주를 넘은 53부터는 입력해도 값을 불러오지 못하고 덤프가 발생합니다.
반응형