반응형
모두 크리스마스때 잘 보내셨나요~ 저는 맛있는거 먹고 잘보냈답니다~
날짜에 대한 기간을 계산해야하는 상황도 종종있습니다. 이때 "FIMA_DAYS_AND_MONTHS_AND_YEARS"를 사용하면 특정 날짜 사이의 연, 월, 일 기간을 계산하여 정수 값으로 반환 받을 수 있습니다.
기능 설명
FIMA_DAYS_AND_MONTHS_AND_YEARS 함수 모듈은 두 날짜 사이의 일수, 개월 수, 연수를 계산하는 SAP ABAP 함수입니다. 주어진 시작일과 종료일을 입력으로 받아, 그 사이의 기간을 일, 월, 연 단위로 반환합니다. 이 함수는 주로 날짜 간의 차이를 계산할 때 사용됩니다.
Signature
예시 코드
DATA: EDAYS TYPE I, " 두 날짜 사이의 일수를 저장할 변수"
EMONTHS TYPE I, " 두 날짜 사이의 개월 수를 저장할 변수"
EYEARS TYPE I, " 두 날짜 사이의 연수를 저장할 변수"
FROMDATE TYPE SY-DATUM VALUE '20240101', " 시작 날짜"
TODATE TYPE SY-DATUM VALUE '20241231'. " 종료 날짜"
" 두 날짜 사이의 일수, 개월 수, 연수를 계산하는 함수 호출"
CALL FUNCTION 'FIMA_DAYS_AND_MONTHS_AND_YEARS'
EXPORTING
I_DATE_FROM = FROMDATE " 시작 날짜"
I_DATE_TO = TODATE " 종료 날짜"
IMPORTING
E_DAYS = EDAYS " 계산된 일수를 EDAYS에 저장"
E_MONTHS = EMONTHS " 계산된 개월 수를 EMONTHS에 저장"
E_YEARS = EYEARS. " 계산된 연수를 EYEARS에 저장"
" 결과 출력: 두 날짜 간의 차이를 일수, 개월 수, 연수로 출력"
WRITE:/ 'Difference in Days:', EDAYS.
WRITE:/ 'Difference in Months:', EMONTHS.
WRITE:/ 'Difference in Years:', EYEARS.
실행 화면
주의 사항
- 날짜 형식 : I_DATE_FROM과 I_DATE_TO는 SAP 표준 날짜 형식인 YYYYMMDD 형식을 따라야 합니다. 만약 다른 형식을 사용할 경우 오류가 발생할 수 있습니다.
- 반올림 플래그 (I_FLG_ROUND_UP): 이 플래그를 설정하면 결과 값이 반올림됩니다. 예를 들어, 개월 수나 연수가 소수점 이하로 나오는 경우 이를 반올림하여 정수로 반환합니다.
- 날짜 범위 제한: 일부 시스템에서는 최대 조회 가능한 기간이 제한될 수 있습니다. 예를 들어, 특정 구현에서는 최대 24개월 까지만 조회가 가능하도록 제한될 수 있습니다.
- 오류 처리: 함수 호출 시 날짜가 잘못된 형식이거나 유효하지 않은 경우 오류가 발생할 수 있으므로, 입력 날짜의 유효성을 미리 검증하는 것이 좋습니다.
반응형
'ABAP Standard Function' 카테고리의 다른 글
[ABAP] GRAPH_MATRIX_3D / 3D 그래프 함수 (0) | 2024.12.30 |
---|---|
[ABAP] GET_WEEK_INFO_BASED_ON_DATE / 해당 날의 주차와 월요일, 일요일 산출 (0) | 2024.12.27 |
[ABAP] F4IF_INT_TABLE_VALUE_REQUEST / F4 Search Help Hitlist 출력 (0) | 2024.12.24 |
[ABAP] DATE_GET_WEEK / 주차 수 계산 일(Date) → 주(Week) (0) | 2024.12.23 |
[ABAP] CONVERSION_EXIT_ALPHA_OUTPUT / Leading Zero 제거 (0) | 2024.12.20 |