matinal:ABAP中时间戳的处理

SAP系统中时间戳与日期时间的转换操作
文章详细介绍了在SAP系统中如何获取和转换时间戳,包括使用GETTIMESTAMPFIELD获取当前时间戳,CONVERTDATE根据指定日期和时间生成时间戳,以及CONVERTTIMESTAMP将时间戳转换回日期和时间。此外,还提到了一些系统内置函数和变量在时间处理中的作用。

注:采购订单中时间戳,VELO03_CONVERT_FROM_TIMESTAMP转换。(或CDHDR) 
注:采购订单中时间戳,VELO03_CONVERT_FROM_TIMESTAMP转换。(或CDHDR) 


UTC(UTC, Universal Time Coordinated,通用协调时)时间戳,分为长时间戳和段时间戳,其中长时间戳餐开始的系统的数据元素TIMESTAMPL,类型为DEC(21,7);而段时间戳参考的系统数据元素为TIMESTAMP,类型为DEC(15,0)。下文中如果没有特指,一般都指的短时间戳。

1、获取当前时间戳

GET TIME STAMP FIELD timestamp.

获取当前系统的时间戳(这里的时间戳可以是长类型,也可以是短类型)

示例:

GET TIIME STAMP FIELD lv_timestamp.

2、使用CONVERT DATE生成指定时间的时间戳

CONVERT DATE date

[TIME time [DAYLIGHT SAVING TIME dst] ]

INTO TIME STAMP time_stamp TIME ZONE tz.

根据指定的日期、时间(可选是否为夏令时)和时区生成时间戳,其中[]圈起来的参数为可选参数,参数解释如下:

date:指定的日期(DATS类型)

time:指定的时间(TIMS类型)

dst:夏令时标志(CHAR1类型)

time_stamp:(时间戳 DEC(15,0)类型)

tz:时区(CHAR06类型)

系统预留(系统结构为SYST,程序默认结构为SY)的时间变量有:

    • SY-DATUM:应用服务器日期;
    • SY-UZEIT:应用服务器时间;
    • SY-TZONE:应用服务器时区(INT4);
    • SY-DAYST:夏令时;
    • <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值