Hi Sylvain,
since you would like to avoid sh exit and keep changes in the ABAP ddic only, then you should create a domain for data element ZPRODH2 with lenght 15 and attach a conversion routine in the definition tab and you also might set ZPRODH2 to lenght 15. In transaction SE37 write two conversion exits in the same manner that SAP does: with an input and output parameter only. Make sure that they conform to the naming convention: CONVERSION_EXIT_XXXXX_INPUT and CONVERSION_EXIT_XXXXX_OUTPUT.
Use the defined name XXXXX to your domain conversion routine in the definition tab.
Use string manipulation in the FM:
FUNCTION CONVERSION_EXIT_CONV_OUTPUT.
*"----------------------------------------------------------------------
*"*"Local Interface:
*" IMPORTING
*" VALUE(INPUT)
*" EXPORTING
*" VALUE(OUTPUT)
*"----------------------------------------------------------------------
output = input+10(5).
ENDFUNCTION.
Do not forget to check te conversion exit checkbox from the menu->settings->data browser.
Best Regards.