首先你TIMESTAMPL
值不正確。前八個位置不符合YYYYMMDD
模式。所以我認爲它應該是20160630084459.5000
而不是20163006084459.5000
(20160630
與20163006
)。
其次,這裏有一種方法可以將它轉換爲你想要的。
REPORT zzy NO STANDARD PAGE HEADING.
FORM convert_timestamp.
DATA(l_t1) = CONV timestampl('20160630084459.5000').
DATA: l_t2 TYPE timestamp.
l_t2 = l_t1.
WRITE/: l_t1, l_t2.
CONVERT TIME STAMP l_t1 TIME ZONE sy-zonlo INTO DATE DATA(l_date) TIME DATA(l_time).
CONVERT DATE l_date TIME l_time INTO TIME STAMP l_t2 TIME ZONE sy-zonlo.
WRITE/l_t2.
ENDFORM.
START-OF-SELECTION.
PERFORM convert_timestamp.
這裏是輸出。
20.160.630.084.459,5000000
20.160.630.084.460
20.160.630.084.459
儘管我贊成使用ABAP對象,但在這種情況下,它無法以任何方式獲得關鍵點。 – vwegert
@vwegert你能否詳細說明一下?我應該使用這種簡單的例子嗎? – Jagger
開始選擇。 DATA(l_t1)= CONV時間戳('20160630084459.5000')。 CONVERT TIME STAMP l_t1 TIME ZONE sy-zonlo INTO DATE DATA(l_date)TIME DATA(l_time)。 CONVERT DATE l_date TIME l_time INTO TIME STAMP DATA(l_t2)TIME ZONE sy-zonlo。 WRITE/l_t2。 – vwegert