sap unix timestamp转换

之前和java做接口的时候就遇到过这个问题,对方的时间戳和SAP的时间戳是不同的。

SAP的时间戳格式NNNNYYDD ZONE HHMMSS这样的一个数值。

JAVA的时间戳是unix时间戳,是以1970年1月1号开始计算的秒数。而且是以零时区开始计算的。

比如北京时间1970年1月1号8点,对应SAP时间戳为19700101000000这是转换了时区后的;那么java的时间戳则是0,对,你没看错,就是0 .。。。

好了下面来说说ABAP怎么转换这个时间戳吧。

ECC里有好几个类都有转换方法,这里就提其中之一:CL_APL_TESTZONE_SERVICES

S4里应该是继承的NWBC里的类:CL_PCO_UTILITY

在使用的时候需要注意了,因为这里转换的是零时区的时间戳,所以在做这个直接先看看是否要带上时区。

原文地址:https://www.cnblogs.com/sapSB/p/10868995.html