Как создать рабочее задание и назначить уведомление через BAPI? - PullRequest
0 голосов
/ 16 мая 2018

Я хотел бы использовать BAPI BAPI_ALM_ORDER_MAINTAIN для создания рабочего задания и назначения ему существующего уведомления. Следующее не работает:

ls_methods-refnumber = 1.
ls_methods-objecttype = 'HEADER'.
ls_methods-method = 'CREATE'.
ls_methods-objectkey = '%00000000001'.
APPEND ls_methods TO lt_methods.

ls_methods-refnumber = 1.
ls_methods-method = 'SAVE'.
ls_methods-objecttype = ''.
ls_methods-objectkey = '%00000000001'.
APPEND ls_methods TO lt_methods.

ls_methods-refnumber = 1.
ls_methods-objecttype = 'OBJECTLIST'.
ls_methods-method = 'CREATE'.
ls_methods-objectkey = '%00000000001'.
APPEND ls_methods TO lt_methods.

ls_header-order_type = 'PMA1'.
ls_header-notif_no = '000000001387'.
APPEND ls_header TO lt_header.

ls_header_up-orderid = 'X'.
ls_header_up-notif_no = 'X' .
APPEND ls_header_up TO lt_header_up.

ls_object_list-notif_no = '000000001387'.
APPEND ls_object_list TO lt_object_list.

ls_object_list_up-processing_ind = 'X'.
APPEND ls_object_list_up TO lt_object_list_up.


CALL FUNCTION 'BAPI_ALM_ORDER_MAINTAIN'
  TABLES
    it_methods       = lt_methods
    it_header        = lt_header
    it_header_up     = lt_header_up
    it_objectlist    = lt_object_list
    it_objectlist_up = lt_object_list_up
    return           = lt_return.


CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.

lt_return содержит:

  • IW 004 Ввод растения
  • IGRAPH 803 Ввод рабочего места
  • IWO_BAPI2 113 Ошибка при обработке методов BAPI

После ввода завода и рабочего центра, lt_return содержит:

  • Невозможно сохранить заказ% 00000000001, так как никакие операции не поддерживаются
  • Ошибка при обработке методов BAPI

Вместо того, чтобы вводить всю эту информацию, я хочу только создать рабочее задание с типом заказа и назначить ему существующее уведомление. Это возможно? Если да, может кто-нибудь предоставить фрагмент кода? Я не хочу пропускать завод, рабочее место и т. Д.

...