codecamp

SAP ABAP 格式化数据

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

WRITE语句是用于在屏幕上显示数据的格式化语句。 WRITE语句有不同的格式选项。 WRITE语句的语法是:

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>的规范。 使用无编辑掩码:这指定禁用在ABAP字典中指定的格式模板。

7

NO-ZERO

如果字段只包含零,则它们将被空格替换。

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

编号条款和说明
1

NO-SIGN

指定屏幕上不显示前导符号。

2

EXPONENT< e>

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

3

ROUND< r>

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

4

CURRENCY< c>

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

5

UNIT< u>

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

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

这里,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
SAP ABAP 日期和时间
SAP ABAP 异常处理
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }