关于upload文件中常用的检查

abap.png


我们在Upload/Download数据的时候,会遇到一些数据需要检查,一些数据需要转换,今天把这些东西做一下总结,方便以后使用.

经常需要检查转换的列表:

1.时间日期

2.单位

3.WBS,Master Data中的前面的0,归类为alpha转换

4.数量,往往跟随单位

下面我们就一一把这些需要的检查转换等总结一下:

关于时间:

函数: CONVERT_TIME_INPUT(6->8)

功能: 把6位的时间转换成8位带有分隔符的时间格式

用法: 我们在上传文件的时候,往往使用字符串格式,所以经常使用6位的时间格式,而在sap系统中,往往使用的是带有分隔符的格式,于是这个转换是必要的.同时,这个函数可以检查时间格式是否正确,只要你把PLAUSIBILITY_CHECK这个参数设置成为’X’.

ABAP语句: replace(8->6)

这种转换就很简单了,只要写一下就搞定(ls为8位的时间格式):

REPLACE ALL OCCURRENCES OF ‘:’ IN ls WITH space.
CONDENSE ls.

关于日期:

两个函数,分别是internal和external

CONVERT_DATE_TO_INTERNAL

CONVERT_DATE_TO_EXTERNAL

关于具体用法,我想就不用多提了,因为这两个函数使用起来非常简单.

关于单位:

关于单位的转换我们基本上知道以下四个函数就能搞定:

CONVERSION_EXIT_CUNIT_INPUT

CONVERSION_EXIT_CUNIT_OUTPUT

CONVERSION_EXIT_LUNIT_INPUT

CONVERSION_EXIT_LUNIT_OUTPUT

前面两个是3位的,后面两个是6位的.

关于alpha:

两个函数:

CONVERSION_EXIT_ALPHA_INPUT

CONVERSION_EXIT_ALPHA_OUTPUT

特殊的转换:

WBS:

CONVERSION_EXIT_KONPD_INPUT

CONVERSION_EXIT_KONPD_OUTPUT

Material:

CONVERSION_EXIT_MATN1_INPUT

CONVERSION_EXIT_MATN1_OUTPUT

关于数量:

只需要一个函数:

CHECK_AND_CONVERT_NUMERICS

注意里面参数的使用,最常用也是最简单的使用方法:

DMZEI: 这个输入你的小数点的格式(. Or ,)

DTYPE: 数据类型(QUAN,CURR,DEC)

EFELD: 字符串类型的数值,可以带正负号

IMP_DECIMALS: 小数点位数

理论上只需要输入以上四个参数就足够了,如果你想使用更复杂的功能,那就需要知道你这个数字类型的变量要放到那个程序的那个屏幕上,基本上我们也用不到.

补充: 由hand沈威同志提出

关于数量的转换函数:CHAR_FLTP_CONVERSION

经过测试,也非常好用,大家可以根据自己的需要选择,非常感谢沈同学的补充.

我基本上就总结这些了,如果朋友们觉得还需要有什么补充的,请给我留言.


About The Author

从事SAP行业有些年头,对SAP技术稍有了解; 如无特别声明,本博客文章为原创,转载请注明; 博主MSN:xuchunbo0901@hotmail.com; 博主邮箱:bob.xu@abaptech.com。

No Comments

Leave A Reply


注意: 评论者允许使用'@user空格'的方式将自己的评论通知另外评论者。例如, ABC是本文的评论者之一,则使用'@ABC '(不包括单引号)将会自动将您的评论发送给ABC。使用'@all ',将会将评论发送给之前所有其它评论者。请务必注意user必须和评论者名相匹配(大小写一致)。

无觅相关文章插件,快速提升流量