ABAP_转换函数
ABAP:转换函数收藏
我们在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_DA TE_TO_INTERNAL
CONVERT_DA TE_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
asp 字符串转数组CONVERSION_EXIT_ALPHA_OUTPUT
特殊的转换:
WBS:
CONVERSION_EXIT_KONPD_INPUT
CONVERSION_EXIT_KONPD_OUTPUT
Material:
CONVERSION_EXIT_MA TN1_INPUT
CONVERSION_EXIT_MA TN1_OUTPUT 关于数量:
只需要一个函数:
CHECK_AND_CONVERT_NUMERICS
注意里面参数的使用,最常用也是最简单的使用方法:
DMZEI: 这个输入你的小数点的格式(. Or ,)
DTYPE: 数据类型(QUAN,CURR,DEC)
EFELD: 字符串类型的数值,可以带正负号
IMP_DECIMALS: 小数点位数
理论上只需要输入以上四个参数就足够了,如果你想使用更复杂的功能,那就需要知道你这个数字类型的变量要放到那个程序的那个屏幕上,基本上我们也用不到.
补充: 由hand沈威同志提出
关于数量的转换函数:CHAR_FLTP_CONVERSION
经过测试,也非常好用,大家可以根据自己的需要选择,非常感谢沈同学的补充. CURRENCY_A
MOUNT_SAP_TO_DISPLAY
CURRENCY_AMOUNT_DISPLAY_TO_SAP

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。