ABAP日期时间函数(转载)

本文介绍了一系列日期操作函数,如日期计算、比较、转换等,并提供了具体用法和输出示例,适用于不同场景下的日期处理需求。

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字段的和。
输出结果:
date:2016.03.31
flag:X
days:24

RP_CALC_DATE_IN_INTERVAL 函数

获取输入日期前、后的年、月、日

DATA calc_date TYPE p0001-begda. 
CALL FUNCTION 'RP_CALC_DATE_IN_INTERVAL'
  EXPORTING
    date      = '20140101' "输入日期
    days      = 10         "天数
    months    = 0          "月数
    signum    = '+'        "+号:表示 N天/月/年后的日期, -号:表示过去的日期
    years     = 0          "年数
  IMPORTING
    calc_date = calc_date. "返回结果:10天后的日期(2014.01.11)

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.

RP_LAST_DAY_OF_MONTHS 函数

获取输入日期最后一天的日期

DATA date TYPE sy-datum.
CALL FUNCTION 'RP_LAST_DAY_OF_MONTHS'
  EXPORTING
    day_in            = '20140101'  "输入日期
  IMPORTING
    last_day_of_month =  date       "返回日期:20140131
  EXCEPTIONS
    day_in_no_date    = 1
    OTHERS            = 2.

BKK_GET_MONTH_LASTDAY 函数

获取输入日期最后一天的日期

DATA date TYPE sy-datum.
CALL FUNCTION 'BKK_GET_MONTH_LASTDAY'
 EXPORTING
    i_date   = '20140101' "输入日期
  IMPORTING
    e_date   = date.      "返回日期:20140131

CCM_GO_BACK_MONTHS 函数

获取输入日期过去N月的日期

DATA date TYPE sy-datum.
CALL FUNCTION 'CCM_GO_BACK_MONTHS'
  EXPORTING
    currdate   = '20140101' "输入日期
    backmonths = 3          "过去月数
  IMPORTING
    newdate    = date.      "返回日期:20131001

MONTH_PLUS_DETERMINE 函数

获取输入日期后来N月的日期

DATA date TYPE sy-datum.
CALL FUNCTION 'MONTH_PLUS_DETERMINE'
  EXPORTING
    months   = 3
    olddate  = '20140101' "输入日期
  IMPORTING
    newdate  = date.      "返回日期:20140401

DATE_GET_WEEK 函数

获取输入日期该年的周数,输出格式为:YYYYWW。

DATA week TYPE scal-week.
CALL FUNCTION 'DATE_GET_WEEK'
  EXPORTING
    date         = '20140101'   "输入日期
  IMPORTING
    week         = week         "返回周数:201401
  EXCEPTIONS
    date_invalid = 1
    OTHERS       = 2.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值