ITPub博客

首页 > 应用开发 > IT综合 > 删除程序中的 逗号

删除程序中的 逗号

原创 IT综合 作者:nighthawk77 时间:2007-07-12 12:33:29 0 删除 编辑

在 制作 Report Program 时有需要从 secondary list向 basic list 复制 数值的时候 。

这时把读取 的数据 复制到 数值的变量里 程序会报错推出。

所以需要把数字中间的 “,” 剔除出去 。

下面的函数 是把 数字中间没有的字符删除的函数。

[@more@]

在 制作 Report Program 时有需要从 secondary list向 basic list 复制 数值的时候 。

这时把读取 的数据 复制到 数值的变量里 程序会报错推出。

所以需要把数字中间的 “,” 剔除出去 。

下面的函数 是把 数字中间没有的字符删除的函数。

FUNCTION Z_CHECK_AND_CONVERT_NUMBER.

*"----------------------------------------------------------------------

*"*"Local interface:

*" IMPORTING

*" VALUE(P_INPUT)

*" EXPORTING

*" VALUE(P_OUTPUT)

*" EXCEPTIONS

*" NO_NUMERIC

*"----------------------------------------------------------------------

DATA : NUMBER(30),
NUMBER_OUT(30),
LENGTH TYPE I,
LENGTH2 TYPE I,
ONE.

MOVE P_INPUT TO NUMBER.
LENGTH = STRLEN( NUMBER ).

IF NUMBER CP '*.*.*'.
RAISE NO_NUMERIC.
ENDIF.

DO LENGTH TIMES.
ONE = NUMBER(1).

IF ONE = ','.
ELSEIF ONE = ' '.
LENGTH2 = STRLEN( NUMBER_OUT ).
IF LENGTH2 > 0. EXIT. ENDIF.
ELSEIF ONE BETWEEN '0' AND '9' OR
( ONE EQ '-' AND SY-INDEX EQ LENGTH ) OR
ONE EQ '.'.
CONCATENATE NUMBER_OUT ONE INTO NUMBER_OUT.
ELSE.
RAISE NO_NUMERIC.
ENDIF.

SHIFT NUMBER.
ENDDO.

MOVE NUMBER_OUT TO P_OUTPUT.
ENDFUNCTION.

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/7549807/viewspace-926215/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
下一篇: Form 的 参数表格
请登录后发表评论 登录
全部评论
  • 博文量
    2
  • 访问量
    1652