Week difference

This tip provides a function module that helps you calculate the number of weeks between two dates.

The following is a function module that helps you calculate the number of weeks between two dates.
FUNCTION zweek_difference.
*"----------------------------------------------------------------------
*"*"Local interface:
*" IMPORTING
*" REFERENCE(DATE1) LIKE SCAL-DATE DEFAULT 12312004
*" REFERENCE(DATE2) LIKE SCAL-DATE DEFAULT 01012005
*" EXPORTING
*" REFERENCE(DAY_DIFF) TYPE I
*" REFERENCE(WEEK_DIFF) TYPE I
*"
*" Written By: Offshore Team (INDIA)
*"----------------------------------------------------------------------

**Data Declaration

DATA week1 LIKE scal-week.
DATA week2 LIKE scal-week.
DATA date_st LIKE scal-date.
DATA day LIKE scal-indicator.
DATA date_diff(5) TYPE n.
DATA date_change TYPE sy-datum.

**To get the Week of Start Date

CALL FUNCTION 'DATE_GET_WEEK'
EXPORTING
date = date1
IMPORTING
week = week1
* EXCEPTIONS
* DATE_INVALID = 1
* OTHERS = 2

.
IF sy-subrc = 0.

**To get the First Day of the week from Start Date

CALL FUNCTION 'WEEK_GET_FIRST_DAY'
EXPORTING
week = week1
IMPORTING
date = date_st
* EXCEPTIONS
* WEEK_INVALID = 1
* OTHERS = 2
.
IF sy-subrc = 0.

ENDIF.

ENDIF.

date_diff = date2 - date_st.

day_diff = date_diff MOD 7.
week_diff = date_diff DIV 7.

IF ( ( day_diff > = 1 ) AND ( day_diff < 7 ) ).

week_diff = week_diff + 1.

ENDIF.

date_change = date2.

IF day_diff = 0.

CALL FUNCTION 'DATE_COMPUTE_DAY'
EXPORTING
date = date_change
IMPORTING
day = day.

IF sy-subrc = 0.

IF day = 1.
week_diff = week_diff + 1.
ENDIF.
ENDIF.

ENDIF.

ENDFUNCTION.
This was first published in July 2004

Dig deeper on SAP Basis administration and NetWeaver administration

Pro+

Features

Enjoy the benefits of Pro+ membership, learn more and join.

0 comments

Oldest 

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to:

SearchManufacturingERP

SearchOracle

SearchDataManagement

SearchAWS

SearchBusinessAnalytics

SearchCRM

SearchContentManagement

SearchFinancialApplications

Close