1 DATA: date TYPE sy-datum,
2 time TYPE sy-uzeit,
3 saptimestamp TYPE timestamp,
4 javatimestamp TYPE string,
5 lv_ts TYPE string.
6
7 DATA:lv_date TYPE sy-datum, "日期
8 lv_time TYPE sy-uzeit. "时间
9
10 *获取sap时间戳(格林威治时间)
11 GET TIME STAMP FIELD saptimestamp .
12
13 *TTZZ可以查看时区
14 *将时间戳转换为日期时间(此时的日期是格林威治日期时间)
15 CONVERT TIME STAMP saptimestamp TIME ZONE 'UTC'
16 INTO DATE date
17 TIME time .
18
19 *时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数。
20 CALL METHOD cl_pco_utility=>convert_abap_timestamp_to_java
21 EXPORTING
22 iv_date = date
23 iv_time = time
24 IMPORTING
25 ev_timestamp = javatimestamp. "JAVA时间戳
26
27 *将格林威治时间转换成北京时间(+8小时)
28 lv_ts = javatimestamp + 8 * 60 * 60 * 1000.
29
30 CALL METHOD cl_pco_utility=>convert_java_timestamp_to_abap "JAVA时间戳转日期
31 EXPORTING
32 iv_timestamp = lv_ts
33 IMPORTING
34 ev_date = lv_date
35 ev_time = lv_time.