SAPфорум.RU
https://sapboard.ru/forum/

Bapi_eqmt_create - IE01
https://sapboard.ru/forum/viewtopic.php?f=8&t=95465
Страница 1 из 1

Автор:  Maksimka [ Пн, сен 18 2017, 09:23 ]
Заголовок сообщения:  Bapi_eqmt_create - IE01

Добрый день уважаемые консультанты PM.

Хочу сделать пакетник для создание множества ЕО. Нашёл вроде бы нужное БАПИ Bapi_eqmt_create, но вот вопрос: можно ли заполнить с помощью этого BAPI z-овские поля, которые я добавил с помощью user-exit в транзакцию IE01. Может кто делал?

Автор:  Daw [ Пн, сен 18 2017, 10:41 ]
Заголовок сообщения:  Re: Bapi_eqmt_create - IE01

Используй BAPI_EQUI_CREATE, там все поля есть в extension

Автор:  Maksimka [ Пн, сен 18 2017, 11:20 ]
Заголовок сообщения:  Re: Bapi_eqmt_create - IE01

Daw написал(а):
Используй BAPI_EQUI_CREATE, там все поля есть в extension

Я может не допонимаю, но я открыл в se37 BAPI_EQUI_CREATE и облазил все экспортируемые в этот функциональный модуль таблички, вот эти
BAPI_ITOB_PARMS-EQUIPMENT
BAPI_ITOB
BAPI_ITOB_EQ_ONLY
BAPI_FLEET, там нет ни где тех полей, которые я добавил в транзакцию IE01. Или как то по другому это делать надо?

Автор:  RA [ Пн, сен 18 2017, 11:33 ]
Заголовок сообщения:  Re: Bapi_eqmt_create - IE01

Посмотрите как заполнять поля в EXTENSIONIN например тут:
http://www.sapboard.ru/forum/viewtopic.php?f=13&t=41286

Для Вашего случая structure ITOBAPI_CREATE_EQ:
FU BAPI_EQUI_CREATE EXTENSIONIN

____________________________________________________

КрТекст

Reference Structure for BAPI Parameters ExtensionIn/ExtensionOut

Description

This import parameter serves as a container for transferring customer
enhancements to the BAPI. Business Add-In (BAdI)
BADI_EAM_ITOB_BAPI_CUST_FIELDS is available for analyzing
customer-specific fields. You can use this BAdI to evaluate
customer-specific fields for equipment.

Value range

If you wish to use this BAPI to add customer-specific fields to
equipment, you have to use the append technique to add these fields to
the internal structure ITOBAPI_CREATE_EQ.

Функц. модуль

BAPI_EQUI_CREATE

Автор:  Maksimka [ Вт, сен 19 2017, 11:39 ]
Заголовок сообщения:  Re: Bapi_eqmt_create - IE01

Спасибо за пояснения.

Попробую поколдовать с тем, что вы насоветовали, если не получится наверное буду пытаться делать с помощью SHDB, хотелось бы хонечно с БАПИ, потому как намного быстрее работает.

Автор:  Maksimka [ Ср, фев 14 2018, 13:14 ]
Заголовок сообщения:  Re: Bapi_eqmt_create - IE01

RA написал:
Посмотрите как заполнять поля в EXTENSIONIN например тут:
http://www.sapboard.ru/forum/viewtopic.php?f=13&t=41286

Для Вашего случая structure ITOBAPI_CREATE_EQ:
FU BAPI_EQUI_CREATE EXTENSIONIN

____________________________________________________

КрТекст

Reference Structure for BAPI Parameters ExtensionIn/ExtensionOut

Description

This import parameter serves as a container for transferring customer
enhancements to the BAPI. Business Add-In (BAdI)
BADI_EAM_ITOB_BAPI_CUST_FIELDS is available for analyzing
customer-specific fields. You can use this BAdI to evaluate
customer-specific fields for equipment.

Value range

If you wish to use this BAPI to add customer-specific fields to
equipment, you have to use the append technique to add these fields to
the internal structure ITOBAPI_CREATE_EQ.

Функц. модуль

BAPI_EQUI_CREATE

Добрый день.

Поздновато ответил, только начал реализовывать. В общем посмотрел я ссылку, которую Вы скинули, и попробовал сделать у себя такое же, но z-овские поля не меняются, получилось что то вроде
Code:
data:
    extensionin type table of bapiparex with header line,
    e_item      type itobapi_create_eq.
  e_item-equnr = wa-equnr.
  e_item-zzito_loc = wa-zzito_loc.
  extensionin-structure = 'ITOBAPI_CREATE_EQ'.
  extensionin-valuepart1 = e_item.
  append extensionin.
call function 'BAPI_EQUI_CHANGE'
    exporting
      equipment        = bapi_itob_parms-equipment
      data_general     = bapi_itob
      data_generalx    = bapi_itobx
      data_specific    = zbapi_itob_eq_only
      data_specificx   = zbapi_itob_eq_onlyx
    importing
      data_general_exp = bapi_itob
      return           = ps_return
  tables
    extensionin             =  extensionin[].
  if ps_return-type = space.
    commit work and wait.

Все поля кроме z-овского поменялись. Может ли эта реализация не работать потому что я добавлял z-овские поля не с помощью BADi, описанного Вами выше, а с помощью user-exit ITOB0001. Не пойму что я делаю не так.

Автор:  Maksimka [ Чт, фев 15 2018, 06:31 ]
Заголовок сообщения:  Re: Bapi_eqmt_create - IE01

Добрый день!

В общем т.к. у меня на данный момент не создание, а изменение, то я пытался использовать структуру itobapi_modify_eq вместо ITOBAPI_CREATE_EQ, но при заполнении этой структуры возникает ошибка "EXTENSIONIN-VALUEPART1" и "E_ITEM" в программе уникода не могут быть преобразованы друг в друга program. Код получается такой
Code:
data:
    extensionin type table of bapiparex with header line,
    e_item      type  itobapi_modify_eq.
  e_item-zzito_loc = wa-zzito_loc.
  extensionin-structure = 'ITOBAPI_MODIFY_EQ'.
  extensionin-valuepart1 = e_item.
  append extensionin.

Далее, если я правильно понял, после заполнения структуры itobapi_modify_eq, нужно делать BADi BADI_EAM_ITOB_BAPI_CUST_FIELDS, но что конкретно там нужно сделать не понятно, ни одного примера в Инете не нашёл. Может кто работал с этим?

Автор:  DED_MOROZ [ Чт, фев 15 2018, 10:46 ]
Заголовок сообщения:  Re: Bapi_eqmt_create - IE01

В BADI нужно будет переложить данные из EXTENSIONIN в поля соответствующих внутренних таблиц.

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/