获取输入日期前、后的年、月、日之后的日期:FIMA_DATE_CREATE
DATA
: date
TYPE
vtbbewe-dvalut,
flag
TYPE
trff_flg,
days
TYPE
trff_type_n_2.
CALL
FUNCTION
'FIMA_DATE_CREATE'
EXPORTING
i_date =
'20140101'
"输入日期
i_flg_end_of_month =
' '
i_years = 2
"两年后的日期. 即输入日期的年加2所得日期,可为负数,表示前两年
i_months = 1
"一个月后的日期.即输入日期的月加1所得日期,可为负数,表示前一个月
i_days = 23
"23天后的日期。可为负数,表示23天前的日期
i_calendar_days = 10
"10天后的日历。同I_DAYS参数。
i_set_last_day_of_month =
'X'
"返回的日期为当前月份的最后一天
IMPORTING
e_date = date
"返回的日期为当前月份的最后一天
e_flg_end_of_month = flag
"如果输入参数I_SET_LAST_DAY_OF_MONTH设置’X’了,则返回值为’X’。
e_days_of_i_date = days.
"返回输入日期的i_calendar_days字段与I_DAYS字段的和。
获取输入日期月份最后一天的日期:LAST_DAY_OF_MONTHS
DATA
date
TYPE
sy-datum.
CALL
FUNCTION
'LAST_DAY_OF_MONTHS'
EXPORTING
day_in =
'20140101'
"输入日期
IMPORTING
last_day_of_month = date
"返回日期:20140131
EXCEPTIONS
day_in_no_date = 1
OTHERS
= 2.
获取输入日期过去N月的日期:CCM_GO_BACK_MONTHS
DATA
date
TYPE
sy-datum.
CALL
FUNCTION
'CCM_GO_BACK_MONTHS'
EXPORTING
currdate =
'20140101'
"输入日期
backmonths = 3
"过去月数
IMPORTING
newdate = date.
"返回日期:20131001
DATA
date
TYPE
sy-datum.
CALL
FUNCTION
'MONTH_PLUS_DETERMINE'
EXPORTING
months = 3
olddate =
'20140101'
"输入日期
IMPORTING
newdate = date.
"返回日期:20140401
DATA
date
TYPE
sy-datum.
CALL
FUNCTION
'CONVERT_DATE_TO_INTERNAL'
EXPORTING
date_external =
'2014.01.01'
"当前用户日期格式:YYYY.MM.DD
accept_initial_date =
' '
IMPORTING
date_internal = date
"输出20140101
EXCEPTIONS
date_external_is_invalid = 1
OTHERS
= 2.
DATA
: days
TYPE
i,
months
TYPE
i,
years
TYPE
i.
CALL
FUNCTION
'FIMA_DAYS_AND_MONTHS_AND_YEARS'
EXPORTING
i_date_from =
'20130101'
i_date_to =
'20141001'
i_flg_separate =
' '
"是否单独计算 若有标识,则返回两日期相差的天数
IMPORTING
e_days = days
"返回天数:638
e_months = months
"返回月数:21
e_years = years.
"返回年数:2
* 单独计算
CALL
FUNCTION
'FIMA_DAYS_AND_MONTHS_AND_YEARS'
EXPORTING
i_date_from =
'20130101'
i_date_to =
'20141001'
i_flg_separate =
'X'
"标识 'X'
IMPORTING
e_days = days
"返回天数:0
e_months = months
"返回月数:9
e_years = years.
"返回年数:1
DATA
: lv_in_time
TYPE
tims,
lv_out_time
TYPE
tims,
lv_am_pm
TYPE
c.
lv_in_time =
'060000'
.
CALL
FUNCTION
'HRVE_CONVERT_TIME'
EXPORTING
type_time =
'B'
" A = 24小时制 -> 12小时制 B = 12小时制 -> 24小时制
input_time = lv_in_time
input_am_pm =
'PM'
IMPORTING
output_time = lv_out_time
output_am_pm = lv_am_pm
EXCEPTIONS
parameter_error = 1
OTHERS
= 2.
WRITE
:/ | Input Time - { lv_in_time }|.
" 输出:060000
WRITE
:/ |Output Time - { lv_out_time }|.
" 输出:180000