Ну идешь в таблицу, далее идешь в элемент данных и уже из него в домен, на основе которого построен элемент данных и как видим для домена присвоена программа преобразования, рисунок EAN11-0.png. Делаем двойной клик в этом поле и видим, рисунок EAN11-1.png что вот есть два модуля которые и выполняют преобразование, по их тексту видим:
if flag_ean11_input_exist = '?'.
call function 'FUNCTION_EXISTS'
exporting
funcname = 'CONV_EXIT_EAN11_INPUT_INTERN'
* IMPORTING
* GROUP =
* INCLUDE =
* NAMESPACE =
* STR_AREA =
exceptions
function_not_exist = 1.
if sy-subrc <> 0.
clear flag_ean11_input_exist.
else.
flag_ean11_input_exist = 'X'.
endif.
endif.
if flag_ean11_input_exist = 'X'.
call function 'CONV_EXIT_EAN11_INPUT_INTERN' "#EC EXISTS
exporting
input = input
importing
output = output.
else.
output = input.
endif.
В общем проверяется наличие функции CONV_EXIT_EAN11_INPUT_INTERN и если она есть то она выполняет преобразование. А там кстати четко написано что если введены только числа:
if work_ean co '0123456789 '.
perform ean_aufbereiten using work_ean.
else.
perform ean_aufbereiten_space using work_ean.
endif.
То далее:
form ean_aufbereiten using eannr.
check kz_ean_exi is initial.
do 18 times.
char_1 = eannr.
if char_1 co '0 '.
shift eannr. "1. Zeichen von EANNR entfällt
else.
exit.
endif.
enddo.
endform.
Короче ведущие нули принципиально удаляются из строки. Так что как бы по правильному удаление нулей отключить никак нельзя, ну или у вас таки код не по стандарту EAN 11.