是否有另一种方法可以在 ABAP 中连接而不是使用CONCATENATE
关键字?
使用示例CONCATENATE
:
DATA:
foo TYPE string,
bar TYPE string,
foobar TYPE string.
foo = 'foo'.
bar = 'bar'.
CONCATENATE foo 'and' bar INTO foobar SEPARATED BY space.
是否有另一种方法可以在 ABAP 中连接而不是使用CONCATENATE
关键字?
使用示例CONCATENATE
:
DATA:
foo TYPE string,
bar TYPE string,
foobar TYPE string.
foo = 'foo'.
bar = 'bar'.
CONCATENATE foo 'and' bar INTO foobar SEPARATED BY space.
除了 Eduardo Copat 提到的字符串表达式之外,有时使用该MESSAGE ... INTO ...
语句是明智的——尤其是在文本应该被翻译的情况下。在某些翻译中,变量相对于彼此的位置必须交换,而且翻译文本通常You cannont combine &1 with &2.
比单独的部分You cannot combine
和更容易翻译with
。
您可以使用 && 或 |{}{}| 符号。
您不需要在对象之间输入和输入,如果您给空间,它将把它当作空间或其他任何东西。
"no space:
foobar = |{ foo }{ bar }|.
"1 space:
foobar = |{ foo } { bar }|.
等等
DATA: v_line TYPE string.
CONCATENATE 'LINE1' 'LINE2' 'using cl_abap_char_utilities=>NEWLINE' INTO v_line SEPARATED BY cl_abap_char_utilities=>NEWLINE.
CALL FUNCTION 'LXE_COMMON_POPUP_STRING'
EXPORTING
text = v_line
.
CLEAR: v_line.
CONCATENATE 'LINE3' 'LINE4' 'cl_abap_char_utilities=>HORIZONTAL_TAB' INTO v_line SEPARATED BY cl_abap_char_utilities=>HORIZONTAL_TAB.
CALL FUNCTION 'LXE_COMMON_POPUP_STRING'
EXPORTING
text = v_line
.
CLEAR: v_line.
CONCATENATE 'LINE5' 'LINE6' 'cl_abap_char_utilities=>VERTICAL_TAB' INTO v_line SEPARATED BY cl_abap_char_utilities=>VERTICAL_TAB.
CALL FUNCTION 'LXE_COMMON_POPUP_STRING'
EXPORTING
text = v_line
.
CLEAR: v_line.
CONCATENATE 'LINE7' 'LINE8' 'cl_abap_char_utilities=>CR_LF' INTO v_line SEPARATED BY cl_abap_char_utilities=>CR_LF.
CALL FUNCTION 'LXE_COMMON_POPUP_STRING'
EXPORTING
text = v_line
.