我正在用ABAP编写一个程序,以DDMMYYYY和YYYYDDMM等不同格式显示系统日期。
代码段是:
WRITE: / 'DATE IN DDYYYYMM FORMAT IS',SY-DATUM+6(2),'.',SY-DATUM+0(4),'.',SY-DATUM+4(2).
产生此输出:
DATE IN DDYYYYMM FORMAT IS 27 . 2007 . 07
是否可以将DATE IN DDYYYYMM FORMAT IS 27 . 2007 . 07
存储在变量c
中,以便在我编写代码WRITE : c.
时输出DATE IN DDYYYYMM FORMAT IS 27 . 2007 . 07
?
答案 0 :(得分:3)
您可以使用字符串运算符&&
来连接文本和变量:
print
输出将是:
DATA: date_text TYPE c LENGTH 10.
date_text = sy-datum+6(2) && '.' &&
sy-datum+0(4) && '.' &&
sy-datum+4(2).
WRITE: / 'DATE IN DDYYYYMM FORMAT IS',
date_text.
PS:对于WRITE,您可以向每个元素添加NO-GAP
,以便删除多余的空间:
DATE IN DDYYYYMM FORMAT IS 17.2019.07
输出将与上面类似。
答案 1 :(得分:1)
一种方便的方法是使用string templates:
DATA(lv_date) = |{ sy-datum+6(2) }.{ sy-datum+0(4) }.{ sy-datum+4(2) }|.
WRITE: / |DATE IN DDYYYYMM FORMAT IS { lv_date }|.