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

Часовой пояс: 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 часа


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

Сейчас этот форум просматривают: Google [Bot], Yandex [Bot]


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

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