【转自http://www.cnblogs.com/VerySky/articles/2226862.html】

通过 Function Module 将外部日期转换为内部日期
所属 Function Group : SCON
所属 Package : SZP

结果:date_input: 2009-1-16  date_output: 2009-01-16
————
注意:
1、在R3 4.71 使用时会提示:函数模块 CONVERT_DATE_INPUT 已过时 – 无法使用
2、如果外部日期包含除当前用户日期分割符以外的非数字字符,则报错 WRONG_FORMAT_IN_INPUT ,相关源代码:
*—START
  DATE_CHAR-SEP = DATE_SEP.
  IF INPUT CN DATE_CHAR.
    MESSAGE S012 WITH DATE_SEP RAISING WRONG_FORMAT_IN_INPUT.
  ENDIF.
*—END
3、无法处理长度大于10或小于5的外部日期,相关源代码:
*—START
  LENGTH = STRLEN( INPUT ).
  IF LENGTH GT 10
  OR LENGTH LT 5.
    MESSAGE S001 WITH DATE_MASK RAISING WRONG_FORMAT_IN_INPUT.
  ENDIF.
*—END
4、如果外部日期不包含日期分隔符,且外部日期长度不等于6位或8位时,报错 WRONG_FORMAT_IN_INPUT
*—START
  IF INPUT CS DATE_SEP.
    SW_SEP = ‘X’.
  ELSE.
    SW_SEP = SPACE.
    IF  LENGTH NE 6                    " Jahr auffuellen
    AND LENGTH NE 8.
      MESSAGE S001 WITH DATE_MASK RAISING WRONG_FORMAT_IN_INPUT.
    ENDIF.
  ENDIF.

05-25 15:55