Текущее время: Чт, июл 31 2025, 17:23

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


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 10 ] 
Автор Сообщение
 Заголовок сообщения: Badi (ME_PROCESS_PO_CUST) для обработки позиции в заказе
СообщениеДобавлено: Пт, июн 05 2009, 11:53 
Младший специалист
Младший специалист

Зарегистрирован:
Пн, сен 24 2007, 07:31
Сообщения: 95
Подскажите, пожалуйста, мне нужно в методе PROCESS_ITEM использовать данные, относящиеся к заголовку заказа. Как можно получить доступ к данным заголовка?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Badi (ME_PROCESS_PO_CUST) для обработки позиции в заказе
СообщениеДобавлено: Пт, июн 05 2009, 12:03 
Модератор
Модератор
Аватара пользователя

Зарегистрирован:
Пт, июн 16 2006, 00:43
Сообщения: 1686
Откуда: Москва <-> Красноярск
Пол: Мужской
А, собственно, метод GET_HEADER экземпляра IM_ITEM в методе PROCESS_ITEM не о чем не говорит? ;)


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Badi (ME_PROCESS_PO_CUST) для обработки позиции в заказе
СообщениеДобавлено: Пт, июн 05 2009, 12:53 
Младший специалист
Младший специалист

Зарегистрирован:
Пн, сен 24 2007, 07:31
Сообщения: 95
Мне нужно достать из заголовка номер поставщика.
Попробовал использовать IM_ITEM->GET_HEADER:
.....
DATA: L_MEPOHEADER TYPE REF TO IF_PURCHASE_ORDER_MM,
L_DATA TYPE MEPOHEADER.
DATA: ZLIFNR TYPE EKKO-LIFNR.

CALL METHOD IM_ITEM->GET_HEADER
RECEIVING
RE_HEADER = L_MEPOHEADER.

CALL METHOD L_MEPOHEADER->GET_DATA
RECEIVING
RE_DATA = L_DATA.

ZLIFNR = L_DATA-LIFNR.
.......
Однако, значение ZLIFNR - пусто :(


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Badi (ME_PROCESS_PO_CUST) для обработки позиции в заказе
СообщениеДобавлено: Пт, июн 05 2009, 13:44 
Младший специалист
Младший специалист

Зарегистрирован:
Пн, сен 24 2007, 07:31
Сообщения: 95
Пардон, :oops: все работает.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Badi (ME_PROCESS_PO_CUST) для обработки позиции в заказе
СообщениеДобавлено: Вт, июн 09 2009, 11:59 
Младший специалист
Младший специалист

Зарегистрирован:
Пн, сен 24 2007, 07:31
Сообщения: 95
Вот засада! В предыдущем примере меняю значение поля в позиции заказа. Затем передаю:
CALL METHOD IM_ITEM->SET_DATA
EXPORTING
IM_DATA = LS_MEPOITEM.

При этом "сносится" часть данных в заголовке заказа, а именно - роли партнера, настроенные через SPRO.
И с чем это может быть связано?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Badi (ME_PROCESS_PO_CUST) для обработки позиции в заказе
СообщениеДобавлено: Вт, июн 09 2009, 15:37 
Начинающий
Начинающий
Аватара пользователя

Зарегистрирован:
Вт, июн 09 2009, 15:25
Сообщения: 24
Откуда: Москва
Пол: Мужской
Martin написал(а):
Вот засада! В предыдущем примере меняю значение поля в позиции заказа. Затем передаю:
CALL METHOD IM_ITEM->SET_DATA
EXPORTING
IM_DATA = LS_MEPOITEM.

При этом "сносится" часть данных в заголовке заказа, а именно - роли партнера, настроенные через SPRO.
И с чем это может быть связано?


В предыдущем примере не видно что вы что то меняете.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Badi (ME_PROCESS_PO_CUST) для обработки позиции в заказе
СообщениеДобавлено: Чт, июн 11 2009, 09:24 
Младший специалист
Младший специалист

Зарегистрирован:
Пн, сен 24 2007, 07:31
Сообщения: 95
Вопрос остается. При отработке метода PROCESS_ITEM БАДИ ME_PROCESS_PO_CUST "сносятся" роли партнеров в заголовке заказа на поставку. Есть ли идеи, как это можно "вылечить"?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Badi (ME_PROCESS_PO_CUST) для обработки позиции в заказе
СообщениеДобавлено: Чт, июн 11 2009, 09:40 
Начинающий
Начинающий
Аватара пользователя

Зарегистрирован:
Вт, июн 09 2009, 15:25
Сообщения: 24
Откуда: Москва
Пол: Мужской
Ничего "сноситься" не должно.
Возможно это зависит от того что именно вы меняете в позиции...
Можно выложить код метода PROCESS_ITEM?
Используются ли другие методы расширения?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Badi (ME_PROCESS_PO_CUST) для обработки позиции в заказе
СообщениеДобавлено: Чт, июн 11 2009, 10:05 
Младший специалист
Младший специалист

Зарегистрирован:
Пн, сен 24 2007, 07:31
Сообщения: 95
Code:
method IF_EX_ME_PROCESS_PO_CUST~PROCESS_ITEM.
DATA: ls_mepoitem TYPE mepoitem.
DATA:   l_mepoheader TYPE REF TO if_purchase_order_mm,
        l_data TYPE mepoheader,
        lt_items type purchase_order_items,
        lif_items type ref to if_purchase_order_item_mm.
DATA: zlifnr TYPE mepoheader-lifnr,
      zebeln TYPE mepoheader-ebeln.

  INCLUDE mm_messages_mac. "useful macros for message handling

CALL METHOD IM_ITEM->GET_HEADER
RECEIVING
RE_HEADER = L_MEPOHEADER.

CALL METHOD L_MEPOHEADER->GET_DATA
RECEIVING
RE_DATA = L_DATA.

ZLIFNR = L_DATA-LIFNR. " Номер поставщика

*---------------------------------------------------------
* Get the Item data
*---------------------------------------------------------
  ls_mepoitem = im_item->get_data( ).
   if ls_mepoitem-konnr is initial.
*проверка на рамочный договор
  SELECT DISTINCT EBELN  FROM
    EKKO   INTO ZEBELN
    WHERE ( EKKO~BSART = 'ZRA' OR EKKO~BSART = 'ZRT' ) AND EKKO~LOEKZ = '' AND EKKO~LIFNR = ZLIFNR AND EKKO~kdatb <= sy-datum and EKKO~kdate >= sy-datum.
  ENDSELECT.
    IF SY-SUBRC = 0.
     ls_mepoitem-konnr = ZEBELN.
    ENDIF.
*---------------------------------------------------------
* Set the Item data
*---------------------------------------------------------

CALL METHOD IM_ITEM->SET_DATA
EXPORTING
IM_DATA = LS_MEPOITEM.

endif.

endmethod.

Перед отработкой этого кода в заголовок заказа подтягиваются роли партнера из осн.записи кредитора (так настроено в SPRO). После заполнения табличной части заказа (отработки кода) роли партнера затираются.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Badi (ME_PROCESS_PO_CUST) для обработки позиции в заказе
СообщениеДобавлено: Чт, июн 11 2009, 13:56 
Младший специалист
Младший специалист

Зарегистрирован:
Пн, сен 24 2007, 07:31
Сообщения: 95
Вопрос снимается. Прошу прощения, если кого-то напряг. Дело в том, что таким же образом система отрабатывает, если вношу изменения руками. То есть, дело не в BADI.


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

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


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

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


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

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