Текущее время: Пн, июл 21 2025, 01:33

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 13 ] 
Автор Сообщение
 Заголовок сообщения: Хромая BADI ME_PROCESS_PO_CUST=>OPEN
СообщениеДобавлено: Чт, мар 22 2007, 11:21 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пн, мар 05 2007, 15:30
Сообщения: 261
Откуда: Москва
(me21n)
Всем привет. ЕРП 2005 определение BADI ME_PROCESS_PO_CUST, внедренный метод OPEN. В методе искаются всякие разные записи из всяких разных таблиц, многа думается, а патом предумывается передать ряд данных в заголовок заказа и саздать несколько итемов со своими данными. С заголовком был гимморой то что метод IF_PURCHASE_ORDER_MM~SET_DATA (CL_PO_HEADER_HANDLE_MM) нихотел никак передавать данные - выличил:
data CL_PO_HEADER_HANDLE_MM type ref to CL_PO_HEADER_HANDLE_MM.
CL_PO_HEADER_HANDLE_MM ?= IM_HEADER.
CL_PO_HEADER_HANDLE_MM->MY_CUST_FIREWALL_ON = 'X'.
нуапатомуже
CALL METHOD IM_HEADER->SET_DATA
EXPORTING
IM_DATA = RE_DATA
.
С итемами гоммор гораздо больше:
CALL METHOD IM_HEADER->CREATE_ITEM
RECEIVING
RE_ITEM = RE_ITEM.
CALL METHOD RE_ITEM->SET_DATA
EXPORTING
IM_DATA = R_DATA
.
Нихрена не передает данные и нисаздает пазиций, ну тоесть он гдето тама внутри класса чето там создает и передает, но при ПАЙ методе транспорт_ту_ДИНП, в заказ ввиде пазиций ничиво не пападает. Кито вступал ужо нагами в этот маргарин? Лениво капать. :0)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, мар 22 2007, 12:20 
Председатель
Председатель
Аватара пользователя

Зарегистрирован:
Чт, апр 13 2006, 12:32
Сообщения: 1503
Откуда: Питер
почему на форуме нет раздела кунсткамера?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, мар 22 2007, 12:41 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пн, мар 05 2007, 15:30
Сообщения: 261
Откуда: Москва
Старичек, зря ты так :0)
Просто у меня настроение хорошее и я его другим решил поднять :0)
Я САПом 5 лет занимаюсь, и весьма успешно, по поводу вопроса чего не понятно? Все исходные данные есть, ну если ты конечно про механизм БАДи и объектно ориентированное программирование слышал только от умных дядей, когда там полы мыл........ :0)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, мар 22 2007, 15:50 
Председатель
Председатель
Аватара пользователя

Зарегистрирован:
Чт, апр 13 2006, 12:32
Сообщения: 1503
Откуда: Питер
Почитав другие твои посты, понятно, что ты прикололся.
Но первая мысль была, писец, кто только в абап не идет.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, мар 22 2007, 16:33 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пн, мар 05 2007, 15:30
Сообщения: 261
Откуда: Москва
Ну вот, а ты сразу хамить :0)
Я тут на этом форуме 3 года не был, а до этого 2 года зависал, меня тут еще многие страрожилы помнят по этому нику. Аккаунт мой здесь грохнули, поскольку я 3 года не появлялся. Вот :0)
Вопрос действительно оформил в шутливой форме по причине хорошего настроения, агресивной реакции не ожидал :0)
А вопрос в силе, кто нибудь сталкивался с этой проблемой, просто лень кучу кода перелапачивать. Поскольку ЕРП 2005 достаточно свежая на сапноты решил не смотреть, а нуда забыл сказать это еще и Ретеил, так что......... :0)
А нужно просто скопировать сбытовой заказ в заказ на поставку, лень пользователям ручками набирать, может проще отмазаться? :0)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, мар 22 2007, 16:54 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, ноя 23 2005, 13:37
Сообщения: 1805
Откуда: ECC 6.0
Пол: Мужской
tcp(4.7) написал(а):
Ну вот, а ты сразу хамить :0)


Трудно читать, когда слова исковерканы. У меня сил не хватило просто до конца дочитать, не то что смысл понять.

Правильно сформулированный вопрос должен содержать половину ответа.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, мар 29 2007, 08:47 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 10:03
Сообщения: 127
Я как то расширял заказ, вернее позицию заказа своим tabstrip-ом с помощью этого BADI. Свои позиции не создавал, но чтобы мои изменения вступили в силу в методе POST вызывал свою функцию, по примеру функции MEPOBADIEX_POST, которая содержит код:
CALL FUNCTION 'ZMEPOBADIEX_COMMIT' IN UPDATE TASK
'ZMEPOBADIEX_COMMIT' сделал по примеру 'MEPOBADIEX_COMMIT'.

_________________
В пору рабочую
пашут и ночью!


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, апр 10 2007, 11:31 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пн, мар 05 2007, 15:30
Сообщения: 261
Откуда: Москва
Забросил я это дело, как только появилось свободное время опять занялся, и нашел следующее решение:

необходимые данные забрасываются в память.
сама ME21n вызывается функцией
move: 'F' to IM_DOCUMENT-DOC_TYPE,
'H' to IM_DOCUMENT-TRTYP,
* 'V' to IM_DOCUMENT-TRTYP,
'PO_PROCESS' to IM_DOCUMENT-PROCESS.

CALL FUNCTION 'MEGUI_MAINTAIN'
EXPORTING
IM_DOCUMENT = IM_DOCUMENT.

leave program.

Далее в БАДИ IF_EX_ME_PROCESS_PO_CUST~OPEN происходит проверки на транзакцию, и много еще других проверок, чтобы не отработало когда не нужно.
далее меняется атрибут чтобы стали возможны изменения
CL_PO_HEADER_HANDLE_MM ?= IM_HEADER.
CL_PO_HEADER_HANDLE_MM->MY_CUST_FIREWALL_ON = 'X'.
Меняются данные заголовка
CALL METHOD IM_HEADER->SET_DATA
EXPORTING
IM_DATA = RE_DATA
.
далее в цикле создаются позиции и заполняются данными, одновременно заполняется таблица моделей позиций.
CALL METHOD IM_HEADER->CREATE_ITEM
RECEIVING
RE_ITEM = RE_ITEM.
check not RE_ITEM is initial.
CALL METHOD RE_ITEM->GET_DATA
RECEIVING
RE_DATA = R_DATA
.
..............изменение данных
CALL METHOD RE_ITEM->SET_DATA
EXPORTING
IM_DATA = R_DATA
.
l_model-MODEL ?= RE_ITEM.
if sy-subrc EQ 0.
append l_model to model.
endif.

Дальше оказалось что при создании метод гет_дата берет данные нескольколько из другого места, лечим
call method CL_PO_HEADER_HANDLE_MM->SET_STATE( CL_PO_HEADER_HANDLE_MM->C_VERIFY ).

Ну и последняя засада в том что обработка позиций вообще не вызывается при создании документа, поэтому пинаем ее ногой:
call method CL_PO_HEADER_HANDLE_MM->IF_FLUSH_TRANSPORT_MM~START( model ).

Ну и заработало. Не знаю понадобится ли это еще кому, ну да ладно.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, апр 10 2007, 11:49 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 10:03
Сообщения: 127
Будем знать. Всё когда-нибудь понадобиться. :wink:

_________________
В пору рабочую
пашут и ночью!


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, апр 10 2007, 12:01 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, авг 24 2004, 07:19
Сообщения: 3952
Откуда: ECC 6.0, South Kazakhstan
tcp(4.7) написал(а):
А нужно просто скопировать сбытовой заказ в заказ на поставку, лень пользователям ручками набирать, может проще отмазаться? :0)


а не проще ли было бы создать заказ на поставку через БАПИ?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, апр 10 2007, 12:31 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пн, мар 05 2007, 15:30
Сообщения: 261
Откуда: Москва
Нет не проще, потому как требование было именно создание, можно конечно было создать через БАПИ, а потом вызвать на редактирование, а если пользователь отказался то удалить через БАПИ, но это не лучше будет :0)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, апр 10 2007, 12:53 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пн, мар 05 2007, 15:30
Сообщения: 261
Откуда: Москва
Потому что данные не полные и через БАПИ не сохраниться, а недостающие данные пользователь должен ручками набрать :0)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, окт 21 2008, 07:37 
Начинающий
Начинающий

Зарегистрирован:
Вт, июл 01 2008, 14:54
Сообщения: 4
Откуда: Samara
Цитата:
...

Ну и заработало. Не знаю понадобится ли это еще кому, ну да ладно.



Очень даже понадобилось. С помощью этого решения удалось завершить разработку с формированием ГКПЗ. Все работает, спасибо! :D


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

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


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

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


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

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