获的两个日期之间的分钟数
data min TYPEi.CALL FUNCTION 'DELTA_TIME_DAY_HOUR'
EXPORTINGT1= '060000'T2= '070000'D1= '20160101'D2= '20160101'
IMPORTINGMINUTES=min .
write min.
获取两个日期期间的:天数、周数、月数、年数
包括期间月份的开始(月份第一天日期)、截止日期(月份最后一天日期)
TYPE-POOLS: p99sg.DATA: days TYPEi,
weeksTYPEi,
monthsTYPEi,
yearsTYPEi.DATA: month_tab TYPE STANDARD TABLE OFp99sg_month_tab_row.CALL FUNCTION 'HR_99S_INTERVAL_BETWEEN_DATES'
EXPORTINGbegda= '20150101' "开始日期
endda = '20160101' "截止日期
IMPORTINGdays= days "返回天数:266
c_weeks = weeks "返回周数:52
c_months = months "返回月数:12
c_years = years "返回年数:1
month_tab = month_tab. "期间月份首尾日
通过函数计算两个日期的差异月份
CALL FUNCTION 'MONTHS_BETWEEN_TWO_DATES_NEW'
EXPORTINGI_DATUM_BIS=I_DATUM_VON=
*I_KZ_INCL_BIS = ' '*I_KZ_VOLLE_MONATE = 'X'
IMPORTINGE_MONATE=
获取输入日期月份的最后一天的日期
CALL FUNCTION 'RP_LAST_DAY_OF_MONTHS'
EXPORTINGday_in= '20160101'
IMPORTINGlast_day_of_month= date 20160131
EXCEPTIONSday_in_no_date= 1OTHERS= 2.
CALL FUNCTION 'BKK_GET_MONTH_LASTDAY'
EXPORTINGi_date= '20160101' "输入日期
IMPORTINGe_date= date. 20160131
根据条件获取需要的日期
CALL FUNCTION 'RP_CALC_DATE_IN_INTERVAL'
EXPORTING
date = '20160101' "日期
days = 10 "天数
months = 0 "月数
signum = '+'years= 0 "年数
IMPORTINGcalc_date= calc_date. (2016.01.11)
CALL FUNCTION 'FIMA_DATE_CREATE'
EXPORTINGI_DATE= '20160101'I_FLG_END_OF_MONTH= ''I_YEARS= 1
*I_MONTHS = 0
I_DAYS = 1
*I_CALENDAR_DAYS = 2
"I_SET_LAST_DAY_OF_MONTH = 'X'
IMPORTINGE_DATE=w_date
E_FLG_END_OF_MONTH=w_flag*E_DAYS_OF_I_DATE = w_days
.
write: w_date,/w_flag,/ w_days.
DATA date TYPE sy-datum.CALL FUNCTION 'MONTH_PLUS_DETERMINE'
EXPORTINGmonths= 3olddate= '20140101' "输入日期
IMPORTINGnewdate= date. "返回日期