Sapforum.Biz

Инструменты => ABAP - Инструментальные средства => SE37 - Построитель функций => Тема начата: Uukrul от Октябрь 05, 2011, 12:02:32 am

Название: ASSET_NUMBER_CONVERT - такое себе формирование ключа ОС
Отправлено: Uukrul от Октябрь 05, 2011, 12:02:32 am
ASSET_NUMBER_CONVERT - такое себе формирование ключа ОС. В общем полезно если надо сформировать например ключ для компонента TREE, по факту формирует строку вида: <Код БЕ>space<№ ОС>тире<Суб№ ОС>. При этом номер и субномер ОС будут выровнены слева нулями при цифровом диапазоне. Код простой:
Код: You are not allowed to view links. Register or Login
function asset_number_convert.
*"----------------------------------------------------------------------
*"*"Lokale Schnittstelle:
*"       IMPORTING
*"             VALUE(I_BUKRS) LIKE  ANLA-BUKRS
*"             VALUE(I_ANLN1) LIKE  ANLA-ANLN1
*"             VALUE(I_ANLN2) LIKE  ANLA-ANLN2
*"       EXPORTING
*"             VALUE(E_ASSET)
*"----------------------------------------------------------------------
  data: ld_sep value '-'.

  get parameter id 'AGL'  field ld_sep.
  if sy-subrc <> 0   or
     ld_sep is initial.
     ld_sep = '-'.
  endif.

  call function 'CONVERSION_EXIT_ALPHA_OUTPUT'
       exporting    input   = i_anln1
       importing    output  = i_anln1.
  call function 'CONVERSION_EXIT_ALPHA_OUTPUT'
       exporting    input   = i_anln2
       importing    output  = i_anln2.

  concatenate i_anln1 i_anln2 into e_asset separated by ld_sep.
  concatenate i_bukrs e_asset into e_asset separated by space.

endfunction.
А ну да разделитель номера и субномера ОС задается из параметра "AGL". что конечно чуток делает использование модуля стремным. Мало ли, что там пользователь себе заведет в этом параметре.