crm web ui 负号默认显示在后面,统一把负号改为左边显示,

代码增强方法 CL_BSP_UTILITY->MAKE_STRING

ENHANCEMENT 1  ZENH_CRM_CL_BSP_UTILITY.    "active version
*  sap 默认负号显示右边,这里默认把负号放左边显示

CALL METHOD zcl_crm_bsp_utility=>make_string
   EXPORTING
     value  = VALUE
    num_decimals    = NUM_DECIMALS
    reference_value = REFERENCE_VALUE
    reference_type  = REFERENCE_TYPE
   receiving
     output = output.
  RETURN.

ENDENHANCEMENT.
*$*$-End:   (1)---------------------------------------------------------------------------------$*$*

创建class ZCL_CRM_BSP_UTILITY

class ZCL_CRM_BSP_UTILITY definitionpublicfinalcreate public .public section.class-methods MOVE_SIGN_TO_LEFTimporting!IV_VALUE type ANY optional!IV_TYPE type C optionalchanging!CV_OUTPUT type STRING .class-methods TEST_SIGN_VALUES .class-methods MAKE_STRINGimporting!VALUE type ANY!NUM_DECIMALS type I default -1!REFERENCE_VALUE type C optional!REFERENCE_TYPE type C optionalreturningvalue(OUTPUT) type STRING .
protected section.
private section.
ENDCLASS.CLASS ZCL_CRM_BSP_UTILITY IMPLEMENTATION.* <SIGNATURE>---------------------------------------------------------------------------------------+
* | Static Public Method ZCL_CRM_BSP_UTILITY=>MAKE_STRING
* +-------------------------------------------------------------------------------------------------+
* | [--->] VALUE                          TYPE        ANY
* | [--->] NUM_DECIMALS                   TYPE        I (default =-1)
* | [--->] REFERENCE_VALUE                TYPE        C(optional)
* | [--->] REFERENCE_TYPE                 TYPE        C(optional)
* | [<-()] OUTPUT                         TYPE        STRING
* +--------------------------------------------------------------------------------------</SIGNATURE>
method MAKE_STRING .
*
* 为了负号左边显示,代码增强方法 CL_BSP_UTILITY->MAKE_STRINGdata: l_type type C.   " type of valueDEFINE  left_sign.move_sign_to_left(EXPORTINGiv_value  = VALUEiv_type   = l_typeCHANGINGcv_output = &1 ).END-OF-DEFINITION.* check valid typedescribe field value type l_type.case l_type.                                "#EC CI_INT8_OKwhen 'g'     " stringor   'C'.     " charoutput = value.return.when    'a'    " decfloat16or   'e'    " decfloat34or   'F'.    " floatoutput = value.left_sign output .  " 负号提前return.when 'b'     " 1-byte integeror   's'     " 2-byte integeror   'I'     " integeror   '8'     " int8or   'D'     " dateor   'T'     " timeor   'N'     " numerical textor   'P'.    " packed" O.K.when 'h'     " internal tableor   'u'     " structureor   'v'.    " structureraise exception type cx_bsp_inv_format.when others.raise exception type cx_bsp_inv_format.endcase.* convert valuedata: tempchar(40) type C.case l_type.                                        "#EC CI_INT8_OKwhen 'b'     " 1-byte integeror 's'     " 2-byte integeror 'I'.    " integerdata: intval type I.move value to intval.if intval < 0.tempchar = '-'.                                     "#EC NOTEXTwrite intval to tempchar+1 no-sign left-justified.else.write intval to tempchar left-justified.endif.move tempchar to output.condense output.left_sign output .  " 负号提前when '8'     "int8..data: intval8 type int8.move value to intval8.if intval < 0.tempchar = '-'.                                     "#EC NOTEXTwrite intval8 to tempchar+1 no-sign left-justified.else.write intval8 to tempchar left-justified.endif.move tempchar to output.condense output.left_sign output .  " 负号提前when 'g'     " stringor 'C'     " charor 'N'.    " numerical textmove value to output.when 'D'.    " datedata: datval type D.move value to datval.if datval is not initial.write datval to tempchar DD/MM/YYYY.move tempchar(10) to output.else.clear output.endif.when 'T'.    " timedata: timval type T.move value to timval.
*      if timval+4(2) = '00'.
*        write timval(4) to tempchar
*              using edit mask '__:__'.                      "#EC NOTEXT
*        move tempchar(5) to output.
*      else.write timval(6) to tempcharusing edit mask '__:__:__'.                   "#EC NOTEXTmove tempchar(8) to output.
*      endif.when 'P'.    " packeddata: l_reference_type type c.if reference_value is initial.l_reference_type = ''.else.l_reference_type = reference_type.endif.if l_reference_type = 'C'.write value to tempchar CURRENCY reference_value.elseif l_reference_type = 'Q'.write value to tempchar UNIT reference_value.elseif num_decimals ne -1.write value to tempchar decimals num_decimals.else.write value to tempchar.endif.move tempchar to output.condense output.left_sign output .  " 负号提前endcase.endmethod.* <SIGNATURE>---------------------------------------------------------------------------------------+
* | Static Public Method ZCL_CRM_BSP_UTILITY=>MOVE_SIGN_TO_LEFT
* +-------------------------------------------------------------------------------------------------+
* | [--->] IV_VALUE                       TYPE        ANY(optional)
* | [--->] IV_TYPE                        TYPE        C(optional)
* | [<-->] CV_OUTPUT                      TYPE        STRING
* +--------------------------------------------------------------------------------------</SIGNATURE>METHOD move_sign_to_left.CASE iv_type.WHEN  'a'    " decfloat16OR  'e'    " decfloat34OR  'F'     " floatOR  'b'     " 1-byte integerOR  's'     " 2-byte integerOR  'I'     " integerOR  'P'.    " packed.IF iv_value >= 0.RETURN.ENDIF.WHEN ''.WHEN OTHERS.RETURN.ENDCASE.DATA: lv_part_a TYPE string,lv_part_b TYPE string,lv_a_pos  TYPE i,lv_length TYPE i.CONDENSE cv_output NO-GAPS. "  去空格lv_length = strlen( cv_output ).lv_a_pos = lv_length - 1.lv_part_b = cv_output+lv_a_pos(1).IF lv_part_b EQ '-'.lv_part_a = cv_output(lv_a_pos).cv_output = lv_part_b && lv_part_a.ENDIF.ENDMETHOD.* <SIGNATURE>---------------------------------------------------------------------------------------+
* | Static Public Method ZCL_CRM_BSP_UTILITY=>TEST_SIGN_VALUES
* +-------------------------------------------------------------------------------------------------+
* +--------------------------------------------------------------------------------------</SIGNATURE>method TEST_SIGN_VALUES.data:lv_out TYPE string,lv_test_script    TYPE string,lv_newline(1),lv_cr_lf(2)       TYPE c.data:
LV_ABPER_RF type ABPER_RF  value  '201901' , "  过账期间 YYYYMM
LV_char10 type char10  value  '11-' , "  字符串
LV_MANDT type MANDT  value  '300' , "  集团
LV_WAERS type WAERS  value  'CNY' , "  货币字段的货币键值
LV_WERT11V type WERT11V  value  '-1000' , "  采用 BCD 格式的货币字段
LV_decfloat16 type decfloat16  value -10000 , "  以 BCD 格式存储的十进制浮点数
LV_WDR_TEST_DECFLOAT3 type WDR_TEST_DECFLOAT3  value -10000 , "  以二进制数字形式存储的十进制浮点数
LV_TBA_PRICE type TBA_PRICE  value -1230000 , "  以 BCD 格式存储的十进制浮点数
LV_CRM_FS_FDT_NUM_DECFLOAT type CRM_FS_FDT_NUM_DECFLOAT  value -10000 , "  以二进制数字形式存储的十进制浮点数
LV_DATum type DATum  value  '20221124' , "  使用格式 YYYYMMDD 的日期
LV_CRM_MKTPL_DEF_PCTN type CRM_MKTPL_DEF_PCTN  value -13455 , "  DEC 采用 BCD 格式的压缩数字
LV_/SAPAPO/SCMB_TSVALUE type /SAPAPO/SCMB_TSVALUE  value -8900 , "  浮点数
LV_INT1 type INT1  value 100 , "  1 字节整数,0 到 255
LV_INT2 type INT2  value -32000 , "  2 字节整数,-32.768 到 32.767
LV_INT4 type INT4  value -212000 , "  4 字节整数,-2.147.483.648 到 +2.147.483.647
LV_INT8 type INT8  value -9223372036854 , "  8 字节整数
LV_LANG type LANG  value 1 , "  语言代码
LV_SHOPTEXT type SHOPTEXT  value  '20-' , "  长字节串
LV_RFCINT type RFCINT  value  '3033' , "  长字节字符串
LV_SCMS_PAIND type SCMS_PAIND  value  '10-' , "  数字文本
LV_ACT_NTGEW type ACT_NTGEW  value  -2000 , "  采用 BCD 格式的数量字段
LV_CRMT_STATUS_GUID type CRMT_STATUS_GUID  value  '005056817CDB1ED68A942A0730600B40' , "  字节序列
LV_CRM_IC_XSTRING type CRM_IC_XSTRING  value  '005056817CDB1ED68A942A0730600B40' , "  字节字符串 (BLOB)
LV_CHIP_NAME type CHIP_NAME  value  '005056817CDB1ED68FE5B21927C6D986' , "  字符串
LV_STRING type STRING  value  '005056817CDB1ED693FE6B4FBB7656E7' , "  字符串 (CLOB)
LV_TIMS type TIMS  value  '201133' , "  格式为 HHMMSS 的时间
LV_CRMUNIT type CRMUNIT  value  'TO' , "  数量字段的单元码lv_int    TYPE INT1 VALUE 100.CLASS cl_abap_char_utilities DEFINITION LOAD.lv_newline = cl_abap_char_utilities=>newline.lv_cr_lf   = cl_abap_char_utilities=>cr_lf.DEFINE conv_out_sign.CLEAR lv_out.CALL METHOD make_stringEXPORTINGvalue  = &2receivingoutput = lv_out.lv_test_script = lv_test_script && '数据类型:' && &1 && lv_cr_lf && '结果:' && lv_out && lv_newline.END-OF-DEFINITION.*    conv_out_sign: 'lv_int    TYPE INT1 VALUE -100' lv_int.conv_out_sign:' LV_ABPER_RF type ABPER_RF  value  ''201901'' .  ' LV_ABPER_RF
, ' LV_char10 type char10  value  ''11-'' .  ' LV_char10
, ' LV_MANDT type MANDT  value  ''300'' .  ' LV_MANDT
, ' LV_WAERS type WAERS  value  ''CNY'' .  ' LV_WAERS
, ' LV_WERT11V type WERT11V  value  ''-1000'' .  ' LV_WERT11V
, ' LV_decfloat16 type decfloat16  value -10000 .  ' LV_decfloat16
, ' LV_WDR_TEST_DECFLOAT3 type WDR_TEST_DECFLOAT3  value -10000 .  ' LV_WDR_TEST_DECFLOAT3
, ' LV_TBA_PRICE type TBA_PRICE  value -1230000 .  ' LV_TBA_PRICE
, ' LV_CRM_FS_FDT_NUM_DECFLOAT type CRM_FS_FDT_NUM_DECFLOAT  value -10000 .  ' LV_CRM_FS_FDT_NUM_DECFLOAT
, ' LV_DATum type DATum  value  ''20221124'' .  ' LV_DATum
, ' LV_CRM_MKTPL_DEF_PCTN type CRM_MKTPL_DEF_PCTN  value -13455 .  ' LV_CRM_MKTPL_DEF_PCTN
, ' LV_/SAPAPO/SCMB_TSVALUE type /SAPAPO/SCMB_TSVALUE  value -8900 .  ' LV_/SAPAPO/SCMB_TSVALUE
, ' LV_INT1 type INT1  value 100 .  ' LV_INT1
, ' LV_INT2 type INT2  value -32000 .  ' LV_INT2
, ' LV_INT4 type INT4  value -212000 .  ' LV_INT4
, ' LV_INT8 type INT8  value -9223372036854 .  ' LV_INT8
, ' LV_LANG type LANG  value 1 .  ' LV_LANG
, ' LV_SHOPTEXT type SHOPTEXT  value  ''20-'' .  ' LV_SHOPTEXT
*, ' LV_RFCINT type RFCINT  value  ''3033'' .  ' LV_RFCINT
, ' LV_SCMS_PAIND type SCMS_PAIND  value  ''10-'' .  ' LV_SCMS_PAIND
, ' LV_ACT_NTGEW type ACT_NTGEW  value  -2000 .  ' LV_ACT_NTGEW
, ' LV_CRMT_STATUS_GUID type CRMT_STATUS_GUID  value  ''005056817CDB1ED68A942A0730600B40'' .  ' LV_CRMT_STATUS_GUID
, ' LV_CRM_IC_XSTRING type CRM_IC_XSTRING  value  ''005056817CDB1ED68A942A0730600B40'' .  ' LV_CRM_IC_XSTRING
, ' LV_CHIP_NAME type CHIP_NAME  value  ''005056817CDB1ED68FE5B21927C6D986'' .  ' LV_CHIP_NAME
, ' LV_STRING type STRING  value  ''005056817CDB1ED693FE6B4FBB7656E7'' .  ' LV_STRING
, ' LV_TIMS type TIMS  value  ''201133'' .  ' LV_TIMS
, ' LV_CRMUNIT type CRMUNIT  value  ''TO'' .  ' LV_CRMUNIT.cl_demo_output=>display_text( lv_test_script ).endmethod.
ENDCLASS.

abp web ui 负号提前显示相关推荐

  1. Spark Streaming在Spark Web UI上的显示办法

    下面开始注意: 不要改变这个实验中各个步骤的顺序!!! 启动spark集群和HDFS集群(搞不定的请自行百度) 然后 ① $ nc -lk 9999 test test home  home scho ...

  2. Flink Web UI中不显示各算子节点的接收数据量

    1. 现象 各节点发送/接收数据量都是0 可以看到各节点是链接在一起的 2. 原因 整个流程各operator task的并行度相同,而Flink默认不监控与外界数据源的输入输出,可以把中间算子的并行 ...

  3. YarnTimeLineJHS Web UI中显示的最大任务数配置

    Yarn RM Web UI中保存的最大的运行完成(completed)的任务数 yarn.resourcemanager.max-completed-applications hadoop2中默认值 ...

  4. 15 个 JavaScript Web UI 库

    新闻来源:speckboy.com 几乎所有的富 Web 应用都基于一个或多个 Web UI 库或框架,这些 UI 库与框架极大地简化了开发进程,并带来一致,可靠,以及高度交互性的用户界面.本文介绍了 ...

  5. 推荐10款优秀的JavaScript Web UI库 框架和套件

    在进行Web开发时,并非所有的库都适合你的项目,但真正开发的时候,你任然需要依赖一款UI框架.特别在你时间紧迫的时候,它是你忠实的朋友. 他们都是些广泛使用包含不同语言实现的WEB UI框架.今天我就 ...

  6. 15 个 JavaScript Web UI 库 (转)

    几乎所有的富 Web 应用都基于一个或多个 Web UI 库或框架,这些 UI 库与框架极大地简化了开发进程,并带来一致,可靠,以及高度交互性的用户界面.本文介绍了 15 个非常强大的 JavaScr ...

  7. Kendo Web UI Grid数据绑定,删除,编辑,并把默认英文改成中文

    Kendo Web UI 是个不错的Jquery框.可惜老外写的,很多都是默认的英文,当然我们也可以设置成中文,接下来,我们就看看Grid是如何实现的数据绑定(Kendo Grid数据绑定实现有很多方 ...

  8. Microsfot.Web.UI.WebControls.TreeView JavaScript控制方法研究(转)

    Microsfot.Web.UI.WebControls.TreeView JavaScript控制方法研究 caidaoli@hotmail.com 2003-11-26 被选择的节点的索引: tr ...

  9. .Net Telerik Web UI 安装和使用入门

    一 安装 双击Telerik.Web.UI_2013_2_611_Dev.msi进行安装: 二 关于resx 文件 看下安装目录下,有很多个resx文件:看上去和telerik web ui 的控件对 ...

最新文章

  1. TWAIN Specification Chapter 4 “Advanced Application Implementation”译——应用程序端的高级实现...
  2. Android开发之 当前日期String类型转date类型 java代码中实现方法
  3. Appium 与 Chromedriver
  4. UDP成为低延时流媒体关键 选SRT还是QUIC?
  5. .NET Core容器化开发系列(一)——Docker里面跑个.NET Core
  6. C++类和new、delete操作符和堆和栈内存的分配
  7. java vm_Java VM –提防YoungGen空间
  8. @Value与@ConfigurationProperties注解的讲解与区别
  9. 思杰VDI外篇XDDC安装
  10. RH413-测试文件的特殊权限
  11. MediaChooser图库浏览器
  12. 程序设计c语言答案pdf,C语言程序设计习题解答.pdf
  13. 使用极大似然法对逻辑回归中的参数进行估计的数学原理
  14. php 修改文件的权限_授予PHP写入文件和文件夹的权限
  15. 曲线与曲面的微分几何
  16. oracle append作用分析
  17. 你有你的计划,世界另有计划这本书 万维钢
  18. 有没有什么赚钱的副业?分享,适合学生赚钱的30个副业!
  19. 世界最具影响力的100个品牌
  20. vmware workstation14永久激活密钥

热门文章

  1. 带按扭的轮换横幅广告
  2. 量化交易之vn.py篇 - 同步持仓发单逻辑(非净头寸 净头寸)
  3. 1088: 手机短号 (多实例)C语言
  4. 鼠标dpi设置多少合适呢?查看鼠标dpi的方法
  5. 【题库】OBCA认证考试题库(单选部分)
  6. 计算机网络实验报告一
  7. 0202了,你会用手机操控电脑吗?
  8. 使用word2vec训练词向量
  9. MATLAB获取屏幕分辨率
  10. 自制操作系统5-结构体、文字显示与GDT/IDT初始化