Текущее время: Вт, июн 25 2024, 20:56

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 2 ] 
Автор Сообщение
 Заголовок сообщения: BAPI_PROJECT_MAINTAIN
СообщениеДобавлено: Пт, окт 13 2023, 08:01 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Чт, янв 24 2013, 08:43
Сообщения: 786
Откуда: South Kazakhstan
Пол: Мужской
Всем добрый день.

Много всякой инфы по автоматизации создания СПП элементов, но столкнулся со следующей проблемой. Есть программа пакетного ввода по созданию СПП элементов с помощью BAPI_PROJECT_MAINTAIN. Пакетник работает нормально. СПП элементы создаются. Возникла необходимость создания СПП элементов иерархически. В BAPI_PROJECT_MAINTAIN есть табличка i_wbs_hierarchie_table. Передаёшь туда нужные параметры и создаются СПП элементы с нужной иерархией, но это работает только тогда когда иерархия создаётся с нуля, если же пытаешься создать СПП элементы в уже существующей иерархии BAPI выдаёт ошибку The transfered hierarchy is inconsistent. Вот, собственно код, где я пытаюсь добавить СПП элемент в существующую иерархию. Не пойму, что не так?
Code:
gs_def_upd-project_definition = 'X'.
gs_def_upd-description = 'X'.

* Project definition
gs_def-project_definition = 'Project'.

gt_method-refnumber  = '000001'.
gt_method-objecttype = 'WBS-ELEMENT'.
gt_method-METHOD     = 'CREATE'.
gt_method-objectkey  = 'WBS/01/03'.
APPEND gt_method.
gt_method-refnumber  = space.
gt_method-objecttype = 'WBS-HIERARCHY'.
gt_method-METHOD     = 'CREATE'.
gt_method-objectkey  = space.
APPEND gt_method.
gt_method-refnumber  = space.
gt_method-objecttype = space.
gt_method-METHOD     = 'SAVE'.
gt_method-objectkey  = space.
APPEND gt_method.

gt_wbs-project_definition   = 'Project'.
gt_wbs-wbs_element          = 'WBS/01/03'.
gt_wbs-description          = 'Иерархия 1.3'.
gt_wbs-wbs_planning_element = 'X'.
gt_wbs-comp_code            = 'CC'.
gt_wbs-plant                = '3000'.
gt_wbs-respsbl_cctr_controlling_area = '2000'.
gt_wbs-respsbl_cctr         = 'CC-01'.
APPEND gt_wbs.

gt_wbs_hier-project_definition  = 'Project'.
gt_wbs_hier-wbs_element         = 'WBS/01/03'.
gt_wbs_hier-UP                  = 'WBS/01'.
gt_wbs_hier-down                = space.
gt_wbs_hier-right               = space.
gt_wbs_hier-LEFT                = space.
APPEND gt_wbs_hier.

CALL FUNCTION 'BAPI_PROJECT_MAINTAIN'
  EXPORTING
    i_project_definition     = gs_def
    i_project_definition_upd = gs_def_upd
  TABLES
    i_method_project         = gt_method
    i_wbs_element_table      = gt_wbs
    i_wbs_hierarchie_table   = gt_wbs_hier
    e_message_table          = gt_message.

IF gt_message[] IS INITIAL.
  CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
    EXPORTING
      wait = 'X'.
ENDIF.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: BAPI_PROJECT_MAINTAIN
СообщениеДобавлено: Пт, окт 13 2023, 10:17 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Чт, янв 24 2013, 08:43
Сообщения: 786
Откуда: South Kazakhstan
Пол: Мужской
Нашёл ноту 1906715 - How to maintain table I_METHOD_PROJECT and I_WBS_HIERARCHIE_TABLE to create project and WBS with BAPI_PROJECT_MAINTAIN https://me.sap.com/notes/1906715/E.

Там есть пример заполнения таблицы I_WBS_HIERARCHIE_TABLE. Там пишется, что необходимо сначала считать всю существующую иерархию проекта в таблицу, затем добавить туда новую запись СПП элемента и передать эту таблицу в BAPI_PROJECT_MAINTAIN. Передаю заполненную табличку в BAPI_PROJECT_MAINTAIN. Система выдаёт такую же ошибку.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 2 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB