*---------------------------------------------------------------------* * FORM VIM_ASSIGN_MKEY_AFTER_2 * *---------------------------------------------------------------------* * assign symbols to after-date-part of mainkey part 2 * *---------------------------------------------------------------------* FORM vim_assign_mkey_after_2 USING value(vama2_tabix) TYPE i. LOCAL:x_namtab. DATA: vama_ix TYPE i, keylen TYPE i, position TYPE i. FIELD-SYMBOLS: TYPE vimnamtab. check vim_mkey_after_exists <> space. vama_ix = vama2_tabix + 1. READ TABLE x_namtab ASSIGNING INDEX vama_ix. vama_ix = x_header-keylen - -position. ASSIGN: +-position(vama_ix) TO , +-position(vama_ix) TO . IF x_header-generictrp <> 'X'. * charlike key or non-unicode-system (FS is only assigned for * downward compatibility). keylen = x_header-keylen / cl_abap_char_utilities=>charsize. position = -position / cl_abap_char_utilities=>charsize. vama_ix = keylen - position. ASSIGN: +position(vama_ix) TO TYPE 'C', +position(vama_ix) TO TYPE 'C'. ELSE. ASSIGN: +-position(vama_ix) TO , +-position(vama_ix) TO . ENDIF. ENDFORM. "vim_assign_mkey_after_2