Есть немного пространственная нота на эту тему - 2162245
Но суть в следующем...
В функции GSBH_HIERARCHY_CATALOG_SETS происходит исключение наборов входящих в другой набор, если родительский набор(супернабор) имеет тип S - Одномерный набор
В качестве решения загружаю "отброшенные" иерархии уже из родительской иерархии. Т.е. сделал трансформацию самого объекта на себя. В принцинципе все работает четко, есть только пару ньюансов...
1. В фильтре DTP надо обязательно указывать тип объекта - там так устроен поиск.
2. Было лениво делать для каждой иерархии свою трансформацию.
Сделал одну, а имя иерархии беру из ограничений DTP
DATA: lt_filter TYPE RSBK_TH_RANGE.
DATA: l_HIENM TYPE RSHIENM.
FIELD-SYMBOLS:
"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 =
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
ENDLOOP.
ENDIF.