SAP-ABAP-AMDP 中的日期函数,关于日期的计算

目录

AMDP中的日期函数

CURRENT_DATE 当前系统日期

CURRENT_TIME 当前系统时间 

HOUR()取小时

MINUTE()取分钟

SECOND ()取秒

DAYS_BETWEEN()两个日期的间隔天数

 ADD_DAYS (, )  当前日期加减天数

DAYNAME ()

在CDS视图中,AMDP这种写法,如果要使用SAP的系统变量,不像ABAP那样SY-[],AMDP 中有特定的写法

AMDP中的日期函数

CURRENT_DATE 当前系统日期

获取系统当前日期,返回date格式

DECLARE lv_data date;
lv_data := CURRENT_DATE ;

EXTRACT ({YEAR | MONTH | DAY | HOUR | MINUTE | SECOND} FROM <d>)  获取年,月,日

小时,分钟,秒等

DECLARE ARRAY_TIME INTEGER ARRAY;

ARRAY_TIME[1] := EXTRACT ( YEAR from CURRENT_DATE ) 
ARRAY_TIME[2] := EXTRACT ( MONTH from CURRENT_DATE ) 
ARRAY_TIME[3] := EXTRACT ( DAY from CURRENT_DATE ) 

CURRENT_TIME 当前系统时间 

获取系统当前时间,返回time格式

DECLARE lv_time time;
lv_timeto := CURRENT_TIME ;

HOUR()取小时

获取时间里面的小时数,除了上面那种方法,这种函数可以直接用

DECLARE ARRAY_TIME INTEGER ARRAY;
ARRAY_TIME[1] := HOUR( CURRENT_TIME);

MINUTE()取分钟

获取时间里面的分钟数

DECLARE ARRAY_TIME INTEGER ARRAY;
ARRAY_TIME[2]:= MINUTE ( CURRENT_TIME );

SECOND ()取秒

 获取时间里面的秒数

DECLARE ARRAY_TIME INTEGER ARRAY;
ARRAY_TIME[3]:= SECOND ( CURRENT_TIME );

DAYS_BETWEEN()两个日期的间隔天数

两个日期的间隔天数,返回INT值

DECLARE BT_DAY INT ;
DECLARE lv_data1 DATE := '20220124';
DECLARE lv_data2 DATE := '20220130';
BT_DAY := DAYS_BETWEEN( :lv_data1 , :lv_data2);

 ADD_DAYS (<d>, <n>)  当前日期加减天数

 <d>:日期,<n>为正数时,当前日期后n天的日期,<n>为负数时,当前日期前n天的日期,类似的函数还有 ADD_MONTHS, ADD_MONTHS_LAST, ADD_YEARS, ADD_SECONDS, ADD_WORKDAYS

DECLARE lv_datum DATE ;
lv_datum := add_days (to_Date( CURRENT_DATE ),-7) ;

DECLARE lv_datum2 DATE ;
lv_datum2 := add_days (to_Date( CURRENT_DATE ),7) ;

DAYNAME (<d>)

这个返回的是当前日期是周几, 类似的方法还有DAYOFMONTH, DAYOFYEAR,DAYS_BETWEEN, WEEK, QUARTER, NEXT_DAY.

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Gong JX

多谢鼓励

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值