SAP ABAP 格式化数据

ABAP 提供了各种类型的格式化选项来格式化程序的输出。例如,可以创建包含不同颜色或格式样式的各种项的列表。

WRITE 语句是用于在界面上显示数据的格式化语句。

WRITE 语句有不同的格式选项。

WRITE 的语法如下:

  1. WRITE <format> <f> <options>.

在此语法中,

  • <format> 表示输出格式规范,它可以是一个正斜杠(/),指示从新的一行开始显示输出。
  • 除正斜杠外,格式还包括一个列号和列长度。比如 WRITE/04 (6) 语句,语句显示新行以第 4 列开始,列长度为 6,而 WRITE 20 语句显示当前行以第 20列 开始。
  • 参数 <f> 表示数据变量或编号文本。

下表介绍了用于格式化的各种子句:

编号子句 & 描述
1

LEFT-JUSTIFIED

指定输出左对齐。

2

CENTERED

表示输出居中。

3

RIGHT-JUSTIFIED

指定输出右对齐。

4

UNDER <g>

输出直接从字段 <g> 下开始。

5

NO-GAP

指定 <f> 字段后无空白。

6

USING EDIT MASK <m>

指定格式模板 <m>。 而 Using No EDIT Mask: 是指定停用 ABAP 字典中指定的格式模板。

7

NO-ZERO

如果字段仅包含 0,则它们将替换为空白。

以下是数字类型字段的格式选项:

编号子句 & 描述
1

NO-SIGN

指定界面上不显示前导符号。

2

EXPONENT <e>

指定在类型 F(浮点字段)中,<e> 中定义的幂

3

ROUND <r>

类型 P 字段(数字数据类型)首先乘以 10**(-r),然后四舍五入为整数值。

4

CURRENCY <c>

表示根据 TCURX 数据库表中存储的货币值 <c> 进行格式化。

5

UNIT <u>

指定小数位数根据 T006 数据库表中为类型 P 指定的单位 <u> 来固定。

6

DECIMALS <d>

指定小数点后必须显示 <d> 位数。

例如,下表显示了日期字段的不同格式选项:

格式选项实例
DD/MM/YY13/01/15
MM/DD/YY01/13/15
DD/MM/YYYY13/01/2015
MM/DD/YYYY01/13/2015
DDMMYY130115
MMDDYY011315
YYMMDD150113

Here, DD stands for the date in two figures, MM stands for the month in two figures, YY stands for the year in two figures, and YYYY stands for the year in four figures.

这里,DD 代表两位数字中的日期,MM 代表两位数字中的月份,YY 代表两位数字中的年份,YYYY 代表四位数字中的年份。

让我们看一个实现上述一些格式选项的 ABAP 代码实例:

  1. REPORT ZTest123_01.
  2. DATA: n(9) TYPE C VALUE 'Cankao',
  3. m(5) TYPE C VALUE 'Shouce'.
  4. WRITE: n, m.
  5. WRITE: / n,
  6. / m UNDER n.
  7. WRITE: / n NO-GAP, m.
  8. DATA time TYPE T VALUE '112538'.
  9. WRITE: / time,
  10. /(8) time Using EDIT MASK '__:__:__'.

结果如下:

  1. Cankao Shouce
  2. Cankao
  3. Shouce
  4. CankaoShouce
  5. 112538
  6. 11:25:38