*&---------------------------------------------------------------------*
*& Form date_change
*&---------------------------------------------------------------------*
* 日期转为内部格式
*----------------------------------------------------------------------*
FORM date_change CHANGING p_date TYPE string.
DATA:
lc_flg TYPE c, "分隔符
lc_1(4) TYPE c, "年
lc_2(2) TYPE c, "月
lc_3(2) TYPE c. "日
* 判断是否有分隔符
IF p_date CN '0987654321'. "p_data必须是字符类型
lc_flg = p_date+4(1).
ELSE.
RETURN. "没有分隔符直接结束
ENDIF.
* 按分隔符拆分年月日
SPLIT p_date AT lc_flg INTO lc_1 lc_2 lc_3.
* 判断月日长度,只有一位补零
IF STRLEN( lc_2 ) = 1.
CONCATENATE '0' lc_2 INTO lc_2.
ENDIF.
IF STRLEN( lc_3 ) = 1.
CONCATENATE '0' lc_3 INTO lc_3.
ENDIF.
"日期转换成系统格式(纯数字)
CONCATENATE lc_1 lc_2 lc_3 INTO p_date.
ENDFORM. "date_change