Спасибо, но странно, что-то я не замечал, чтобы структура(иерархия) была неправильная а может в системе 7 уже нет этой ошибки...
Если честно я системы с номером 7 не знаю... ECC вроде все еще 6.0 но разные Ehp*, но а то что там внутри ядро уже NW 7.30, так это к этой ошибке отношения не имело, там абаповский код не правильный был:
loop at it_wbs_element into ls_wbs_element.
* move WBS element to the correct place in the hierarchy
* as there is no update structure for new objects
* note_1615195
* mark flags based on values passed
data: l_flag_up type bapiupdate value con_yes,
l_flag_left type bapiupdate value con_yes.
if ls_wbs_element-wbs_left is initial.
clear l_flag_left.
endif.
if ls_wbs_element-wbs_up is initial.
clear l_flag_up.
endif.
call function 'CJ2054_BUILD_HIERARCHY'
exporting
i_posid_source = ls_wbs_element-wbs_element
i_posid_left = ls_wbs_element-wbs_left
i_posid_up = ls_wbs_element-wbs_up
i_update_left = l_flag_left "* note_1615195
i_update_up = l_flag_up "* note_1615195
exceptions
hierarchy_error = 1.
if sy-subrc <> 0.
message e074(cnif_pi) with ls_wbs_element-wbs_element into null.
* Hierarchieaufbau für PSP-Element & nicht möglich
perform put_sy_message(saplco2o).
lv_error = con_yes.
endif.
endloop.
т.е. как видим флажки l_flag_left и l_flag_up присвоены дефолтные значения = Х, но после первого же элемента, который например имеет уровень 1, флажки больше никогда не становятся равными = Х, и соответственно, присвоения не происходит. Конечно же если у вас уровень 1 не создается, а вы присваиваете СПП уже к созданному ранее СПП вышестоящего уровня, то на эту ошибку наткнуться не должны были. В моем случае я делал сам проект и все СПП к нему, поэтому все СПП были уровня 1 и присвоения уровень/подуровень не происходило. Нота это дело исправляет.