CONVERT_DATE_INPUT
【转自http://www.cnblogs.com/VerySky/articles/2226862.html】
通过 Function Module 将外部日期转换为内部日期
所属 Function Group : SCON
所属 Package : SZP
DATA:date_input TYPE c LENGTH 10 VALUE ’2009-1-16′,
date_output TYPE sy-datum.
CALL FUNCTION ‘CONVERT_DATE_INPUT’
EXPORTING
input = date_input
plausibility_check = ‘X’
IMPORTING
output = date_output "output前是否检查数据合理性
EXCEPTIONS
plausibility_check_failed = 1
wrong_format_in_input = 2
OTHERS = 3.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
WRITE:’date_input:’,date_input,’date_output:’,date_output.
结果: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.
CONVERT_DATE_INPUT的更多相关文章
- [SAP ABAP开发技术总结]日期函数
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
随机推荐
- css3——position定位详解
最近热衷于前端的开发,因为突然发现虽然对于网站.应用来说,功能处于绝对重要的地位,但是用户体验对于用户来讲同样是那么的重要,可以说是第一印象.最近在开发当中发现以前对于css中的position的理解 ...
- react native使用 mobx , can't find variable:Symbol
原因是因为 mobx的版本用的最新版本..用到了 Symbol部分es6的api特性. 解决问题办法 1. 把mobx降版本到 4.3.1 . mobx-react降版本到 5.1.0 即可. 或者 ...
- STL学习笔记(已序区间算法)
针对已序区间执行的算法,执行前提是源区间必须在某个排序准则下已序. 搜寻元素(Searching) 1.检查某个元素是否存在 bool binary_search(ForwardIterator be ...
- JDBC编程理论知识(1)
1.SUN公司为统一对数据库的操作,定义了一套Java操作数据库的规范,称之为JDBC 2.JDBC全称为:Java Data Base Connectivity(java数据库连接),它主要由接口组 ...
- JQuery find函数选择器使用
- linxu 查看python解释器或者c/c++编译器的位置
ubuntu环境下python相关ide的python解释器,它的默认位置在: usr/bin/python gcc和g++分别位于 usr/bin/gcc usr/bin/g++ 也可以用which ...
- js中box和box()的区别
window.onload = function(){ var input = document.getElementByTagName('input')[0]; input.onclick = bo ...
- rbg大神的主页
http://www.rossgirshick.info/ Ross Girshick (rbg)Research ScientistFacebook AI Research (FAIR) r...@ ...
- Vue+原生App混合开发手记#1
项目的大致需求就是做一个App,里面集成各种功能供用户使用,其中涉及到很多Vue的使用方法,单独总结太麻烦,所以通过这几篇笔记来梳理一下.原型图如下: 路由配置 主界面会用到一些原生App方法,比如验 ...
- MySQL_常用SQL语句
1.按小时统计的语句 select concat(date_format(gmt_create, "%Y-%m-%d %k:00~"), hour(gmt_create)+1, & ...