ABAP日期的处理

 

最近做一个功能,需要得到下周一至周五的日期功能,谷歌度娘一番后,没有找到直接可也使用的函数,只能自己写一个。关于周的函数,可也查看Function Group中的CADA。

*设置变量
data : lv_monday TYPE dats,
         lv_sunday TYPE dats,
         lv_friday TYPE dats.
*得到当前日期的周一和周日
CALL FUNCTION 'GET_WEEK_INFO_BASED_ON_DATE'
EXPORTING
DATE   = SY-DATUM
IMPORTING
*     WEEK   =
      MONDAY = lv_monday
      SUNDAY = lv_sunday.
*得到下周一
CALL FUNCTION 'RP_CALC_DATE_IN_INTERVAL'
EXPORTING
DATE      = lv_sunday
      DAYS      = 1
      MONTHS    = 0
      SIGNUM    = '+'
      YEARS     = 0
IMPORTING
      CALC_DATE = lv_monday.
*得到下周五
CALL FUNCTION 'RP_CALC_DATE_IN_INTERVAL'
EXPORTING
DATE      = lv_monday
      DAYS      = 4
      MONTHS    = 0
      SIGNUM    = '+'
      YEARS     = 0
IMPORTING
      CALC_DATE = lv_friday.

 

得到当前日期是星期几。

data lv_date TYPE p.
*得到星期几
CALL FUNCTION 'DAY_IN_WEEK'
EXPORTING
      DATUM = sy-datum
IMPORTING
      WOTNR = lv_date.
*转换成汉字
data lt_weekname TYPE STANDARD TABLE of T246.
data wa_weekname TYPE t246.
CALL FUNCTION 'WEEKDAY_GET'
EXPORTING
LANGUAGE                = '1'
* IMPORTING
*   RETURN_CODE             =
TABLES
      WEEKDAY                 = lt_weekname
* EXCEPTIONS
*   WEEKDAY_NOT_FOUND       = 1
*   OTHERS                  = 2
.
IF SY-SUBRC <> 0.
RETURN.
ENDIF.
READ TABLE lt_weekname WITH KEY WOTNR = lv_date INTO wa_weekname.
*wa_weekname-LANGT 就是得到的数据.

转载于:https://www.cnblogs.com/sodmecai/archive/2012/02/10/2345267.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值