将文本和变量的组合存储在单个变量中

时间:2019-07-17 13:57:45

标签: sap abap

我正在用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

2 个答案:

答案 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 }|.