SAP ABAP – 格式化数据
SAP ABAP – 格式化数据
ABAP 提供各种类型的格式化选项来格式化程序的输出。例如,您可以创建一个列表,其中包含不同颜色或格式样式的各种项目。
WRITE 语句是用于在屏幕上显示数据的格式化语句。WRITE 语句有不同的格式选项。WRITE 语句的语法是 –
WRITE <format> <f> <options>.
在此语法中,<format> 表示输出格式规范,它可以是一个正斜杠 (/),表示从新行开始显示输出。除了正斜杠之外,格式规范还包括列号和列长度。例如,WRITE/04 (6) 语句显示新行从第 4 列开始,列长度为 6,而 WRITE 20 语句显示当前行的第 20 列。参数 <f> 表示数据变量或编号文本。
下表描述了用于格式化的各种子句 –
S.No. | 条款和说明 |
---|---|
1 |
LEFT-JUSTIFIED 指定输出左对齐。 |
2 |
CENTERED 表示输出居中。 |
3 |
RIGHT-JUSTIFIED 指定输出右对齐。 |
4 |
UNDER <g> 输出直接在字段 <g> 下开始。 |
5 |
NO-GAP 指定字段 <f> 后的空白被拒绝。 |
6 |
USING EDIT MASK <m> 表示格式模板 <m> 的规范。不使用编辑掩码:这指定在 ABAP 词典中指定的格式模板已停用。 |
7 |
NO-ZERO 如果字段仅包含零,则它们将被空白替换。 |
以下是数字类型字段的格式选项 –
S.No. | 条款和说明 |
---|---|
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>。 |
例如,下表显示了日期字段的不同格式选项 –
Formatting Option | 例子 |
---|---|
DD/MM/YY | 13/01/15 |
MM/DD/YY | 15 年 1 月 13 日 |
DD/MM/YYYY | 13/01/2015 |
MM/DD/YYYY | 01/13/2015 |
DDMMYY | 130115 |
MMDDYY | 011315 |
YYMMDD | 150113 |
这里DD代表两位数的日期,MM代表两位数的月份,YY代表两位数的年份,YYYY代表四位数的年份。
让我们看一下实现上述一些格式选项的 ABAP 代码示例 –
REPORT ZTest123_01. DATA: n(9) TYPE C VALUE 'Tutorials', m(5) TYPE C VALUE 'Point'. WRITE: n, m. WRITE: / n, / m UNDER n. WRITE: / n NO-GAP, m. DATA time TYPE T VALUE '112538'. WRITE: / time, /(8) time Using EDIT MASK '__:__:__'.
上面的代码产生以下输出 –
Tutorials Point Tutorials Point TutorialsPoint 112538 11:25:38