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 last published in July 2004

Dig Deeper on SAP Basis administration and NetWeaver administration

PRO+

Content

Find more PRO+ content and other member only offers, here.

Start the conversation

Send me notifications when other members comment.

By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy

Please create a username to comment.

-ADS BY GOOGLE

SearchManufacturingERP

SearchOracle

SearchDataManagement

SearchAWS

SearchBusinessAnalytics

SearchCRM

SearchContentManagement

SearchFinancialApplications

Close