1、建立自定义函数

浮点数显示
FUNCTION conversion_exit_zsign_output.
*"----------------------------------------------------------------------
*"*"Local interface:
*"  IMPORTING
*"     REFERENCE(INPUT)
*"  EXPORTING
*"     REFERENCE(OUTPUT)
*"----------------------------------------------------------------------
  DATA: output1(20)   TYPE c,
        output2(20),
        outdatum   TYPE p DECIMALS 6.
  IF  not input is initial.
    outdatum = input.
    IF input > 0.
      WRITE outdatum TO output1 ."RIGHT-JUSTIFIED .
    ELSE.
      outdatum = outdatum * ( -1 ).
      WRITE outdatum TO output1 ."RIGHT-JUSTIFIED.
      CONCATENATE '-' output1 INTO output1.
    ENDIF.
  ELSE.
    CLEAR output1.
  ENDIF.
  CONDENSE output1 NO-GAPS .
  WRITE output1 TO output2 RIGHT-JUSTIFIED .
  output = output2.
ENDFUNCTION.

2、设置ALV输出格式字段格式
  clear ls_fcat.
  ls_fcat-fieldname = 'DEC'.
  ls_fcat-inttype   = 'P'.
  ls_fcat-intlen    = 10.
  ls_fcat-col_pos   = l_lin.
  ls_fcat-seltext_s = ls_fcat-fieldname.
  ls_fcat-seltext_m = ls_fcat-fieldname.
  ls_fcat-seltext_l = ls_fcat-fieldname.
  ls_fcat-edit_mask = '==ZSIGN'.
  append ls_fcat to ct_fcat.

3、调用函数就可达到负数符号前显的效果。
  call function 'REUSE_ALV_GRID_DISPLAY'
    exporting
      it_fieldcat                       = lt_fcat
    tables
      t_outtab                          = gt_outtab
    exceptions
      program_error                     = 1
      others                            = 2.

这种方式同样可以实现相对复杂的显示效果,如财务凭证中S表示借,H表示贷,我们在显示的时候要显示“借”或“贷”,也可以写一个类似的函数来实现。

http://blog.163.com/arhao_h/blog/static/125169020103191200252/

ALV 数值列负号前置 (EDIT_MASK应用)的更多相关文章

  1. .NET组件控件实例编程系列——5.DataGridView数值列和日期列

    在使用DataGridView编辑数据的时候,编辑的单元格一般会显示为文本框,逻辑值和图片会自动显示对应类型的列.当然我们自己可以手工选择列的类型,例如ComboBox列.Button列.Link列. ...

  2. ABAP 负号前置方法汇总

    ABAP 负号前置方法汇总 开发过程中有这样的一个需求,要求指定数字栏位负号前置: 方法一: PERFORM FRM_MOVE_DATA_MINUS CHANGING L_CHAR20. ” 负号前置 ...

  3. RDL 数值列排序

    [注意:RDL排序要删除组内的默认排序字段] 在SSRS中排序时,如果是数值列,默认为显示成以下,会按字母的顺序排序,但并不是我们想要的结果: 怎样达到我们要的效果,按数值排序: 1.进入页面,默认排 ...

  4. DataGridView数值列和日期列

    本文转自:http://www.cnblogs.com/conexpress/p/5923324.html 在使用DataGridView编辑数据的时候,编辑的单元格一般会显示为文本框,逻辑值和图片会 ...

  5. ALV行 列颜色设置

    ALV的颜色设置分为3种:行.列.单元格.   1.列颜色的设置   在 slis_t_fieldcat_alv-emphasize 中,写入需要的颜色代码.   Eg:   DATA: fc TYP ...

  6. 面向对象ALV选择列

    通过  gs_layout-box_fname  = 'SEL'.设置选择行,不能取到 SEL列的值 找资料:作者:f122300349 来源:CSDN 原文:https://blog.csdn.ne ...

  7. PB 报表数值列加%

  8. ALV中的fieldcat详解

    字段目录是用来控制ALV显示的网格中每个字段的属性的,比如字段的顺序,对齐方式,可编辑状态,颜色,等等.常用的字段如下: Row_pos:    默认值为0,可选值为1.2.3,既最大分3级别显示 c ...

  9. ALV用例大全

    一.ALV介绍  The ALV Grid Control (ALV = SAP List Viewer)是一个显示列表的灵活的工具,它提供了基本功能的列表操作,也可以通过自定义来进行增强,因此可以允 ...

随机推荐

  1. 驱动:中断【2】中断处理程序、中断上下文中处理延时及一些函数的调用规则(调IIC中断驱动有感)

    中断处理程序.中断上下文中处理延时及一些函数的调用规则(调IIC中断驱动有感)http://blog.csdn.net/samantha_sun/article/details/6790492 1,中 ...

  2. arduino电子琴(2015-11-04)

    前言 这是论坛上一个坛友问的问题,想做一个可变音调的电子琴,想着正好练练手,就顺手做一下. 接线图

  3. [Swust OJ 217]--Factor(数论,类素数表)

    题目链接:http://acm.swust.edu.cn/problem/0217/ Time limit(ms): 2000 Memory limit(kb): 65535    Descripti ...

  4. Javascript 运动应用 02

                                                                         JS运动应用   多个物体同时运动 例子:多个Div,鼠标移入 ...

  5. 我的Python成长之路---第三天---Python基础(13)---2016年1月16日(雾霾)

    五.Python的常用的内置函数 Python为我们准备了大量的内置函数,如下图所示 这里我们只讨论红框内的内置函数 abs(x) 返回一个数的绝对值(模),参数可以是真说或浮点数 >>& ...

  6. datetime.timedelta

    from django.utils import timezoneimport datetime timezone.now()datetime.datetime(2014, 7, 18, 9, 42, ...

  7. 有什么很好的软件是用 Qt 编写的?

    作者:尘中远链接:http://www.zhihu.com/question/19630324/answer/19365369来源:知乎 一些出名的例子如下:(wiki搬运) 3DSlicer, a ...

  8. 1 #安装php

    #安装php #备注:php5..3以后的版本源码不需要打php-fpm补丁,该补丁已经集成进5..3中强制启用fastcgi. [root@dba01 nginx-]# cd [root@dba01 ...

  9. 从 Qt 的 delete 说开来

    原地址:http://blog.csdn.net/dbzhang800/article/details/6300025 在C++中学习过程中,我们都知道: delete 和 new 必须 配对使用(一 ...

  10. mysql Emoji表情字符集转换

    <pre name="code" class="html">Java代码 java.sql.SQLException: Incorrect stri ...