SAP

SAP ABAP 字符串模版(String Template)核

2023-12-08  本文已影响0人  _扫地僧_

SAP ABAP 字符串模版 (String Template) 是一个帮助我们写出整洁的 ABAP 代码的好帮手。

按照本教程一贯的作风,我们还是通过实际的简单例子来学习。

假设我们的需求是生成如下这个形式的字符串:

Hello '{用户名}', your work is '{工作名}'

其中 Hello 和 , 以及 your work is 这些是静态硬编码的字符串。而大括号里的用户名工作名都是占位符号,在代码运行时,由 ABAP 变量的实际值所替代。

注意这里的需求细节,两个占位符的值最后实际输出时,需要被单引号 ' 所包裹。

和其他高级编程语言一样,ABAP 也有很多种方式实现这个需求。

实现方法1:使用字符串连接符号 &&

这种办法简单直接粗暴,看下面的代码:

REPORT zst.

DATA: name   TYPE string VALUE 'Jerry',
      work   TYPE string VALUE 'ABAP',
      result TYPE string.

result = 'Hello ' && '''' && name && ''',' && 'your work is ' && '''' && work && ''''.
WRITE:/ result.

这个解决方案是不合格的,我们先看看执行结果如何:

可以看到,尽管我们有意在 ABAP 代码里在 Hello后面留了一个空格符号,但是运行时,这个符号没有被 ABAP 系统考虑到。、

同时,isABAP 之间的空格也被吞了。

究其原因,在笔者之前的教程里已经做过介绍:

通过单引号 ' 定义的文本字段字面量,其末尾的空格符号会自动被 ABAP 系统忽略。

那么这个需求到底如何正确实现呢?讲解过程如下

上一篇下一篇

猜你喜欢

热点阅读