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>
    表示格式化是根据 TCURX 数据库表中存储的货币 <c> 值完成的。
    5
    UNIT <u>
    指定小数位数根据类型 P 的 T006 数据库表中指定的 <u> 单位固定。
    6
    DECIMALS <d>
    指定小数点后必须显示的位数<d>。
    例如,下表显示了日期字段的不同格式选项 -
    格式选项 例子
    DD/MM/YY 13/01/15
    MM/DD/YY 01/13/15
    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 '__:__:__'.
    
    上面的代码产生以下输出 -
    
    JC2182 
    Tutorials  
    Point 
    TutorialsPoint 
    112538 
    11:25:38