SAP中有很多Char类型的字段,如果都是数字,且不满该字段长度,则会自动在前缀补足零,然后保存在Table中,而在显示的时候却不显示这些前缀零。比如料号字段,长度是18位,如果一个料号都是数字824500089012,因为不满18位的长度,其在存入Table之前会在前缀补上零,直到补足18位。
但是,在一些报表和RFC中,这些动作却需要代码来完成。不过,还好SAP系统中提供了一些现成的函数供使用。
Function group: ALFA (ALPHAconversion)
Function Module:CONVERSION_EXIT_ALPHA_INPUT (前缀补零)
Function Module:CONVERSION_EXIT_ALPHA_OUTPUT'(前缀去零)
示例:
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT' "前缀补零
EXPORTING
input = i_lifnr
IMPORTING
output = i_lifnr.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' "前缀去零
EXPORTING
input = i_lifnr
IMPORTING
output = i_lifnr.
Function group: OMCV (MaterialNumber Conversion)
Function Module:CONVERSION_EXIT_MATN1_INPUT (料号前缀补零)
Function Module:CONVERSION_EXIT_MATN1_OUTPUT(料号前缀去零)
示例:
CALL FUNCTION 'CONVERSION_EXIT_MATN1_INPUT' "料号前缀补零
EXPORTING
input = i_matnr
IMPORTING
output = o_matnr.
CALL FUNCTION 'CONVERSION_EXIT_MATN1_OUTPUT' "料号前缀去零
EXPORTING
input = i_matnr
IMPORTING
output = o_matnr.