воскресенье, 20 мая 2018 г.

Hierarchy

После обновления ERP, часть иерархий из наборов перестала грузится. Система просто не видет части иерархий в ERP, а часть видит.

Есть немного пространственная нота на эту тему - 2162245
Но суть в следующем...

В функции GSBH_HIERARCHY_CATALOG_SETS происходит исключение наборов входящих в другой набор, если родительский набор(супернабор) имеет тип S - Одномерный набор

В качестве решения загружаю "отброшенные" иерархии уже из родительской иерархии. Т.е. сделал трансформацию самого объекта на себя. В принцинципе все работает четко, есть только пару ньюансов...

1. В фильтре DTP надо обязательно указывать тип объекта - там так устроен поиск.


2. Было лениво делать для каждой иерархии свою трансформацию.
Сделал одну, а имя иерархии беру из ограничений DTP

DATA: lt_filter TYPE RSBK_TH_RANGE.
DATA: l_HIENM   TYPE RSHIENM.
FIELD-SYMBOLS:  LIKE LINE OF lt_filter.
"get DTP filter

p_r_request
->GET_TH_RANGE( RECEIVING R_TH_RANGE = lt_filter ).
"get node name
READ TABLE lt_filter
  
WITH KEY FIELDNM = 'NODENAME'
  
ASSIGNING .
IF sy-subrc = 0.

  l_HIENM 
= -LOW.
  
TRANSLATE l_HIENM TO UPPER CASE.

  
"dummy hier - Don't let the word make your hard
  
IF l_HIENM = SPACE.

    l_HIENM 
= 'ZTEST1'.
  
ENDIF.

  
LOOP AT SOURCE_PACKAGE_1
    
ASSIGNING .

    
-H_HIENM = l_HIENM.
  
ENDLOOP.
ENDIF.

Комментариев нет: