Текущее время: Пт, июл 18 2025, 07:41

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
 Заголовок сообщения: MB_MIGO_BADI. Подтягивание данных в режиме просмотра
СообщениеДобавлено: Вт, ноя 10 2009, 10:39 
Специалист
Специалист

Зарегистрирован:
Чт, сен 04 2008, 12:40
Сообщения: 119
Откуда: Пермь
Пол: Мужской
Добавляю поля в тр-ию MIGO с помощью MB_MIGO_BADI. Вводимые данные успешно сохраняются в моей таблице. Но не могу их потом подтянуть при просмотре (Просмотр/документ материала). Как я понял для заголовка на этот случай данные подтягиваются через метод STATUS_AND_HEADER. А вот какой метод использовать в случае позиций? Может быть LINE_MODIFY? Но через него вроде бы выполнение тр-ии не проходит в режиме просмотра. А также это и в примере не реализовано...

_________________
Если долго биться головой об стену, то вскоре в стене появится небольшое отверстие ...


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: MB_MIGO_BADI. Подтягивание данных в режиме просмотра
СообщениеДобавлено: Вт, ноя 10 2009, 10:50 
Модератор
Модератор
Аватара пользователя

Зарегистрирован:
Пт, июн 16 2006, 00:43
Сообщения: 1686
Откуда: Москва <-> Красноярск
Пол: Мужской
Неверно понимаете.
Для заголовка:
PBO_HEADER
PAI_HEADER
Для позиций:
PBO_DETAIL
PAI_DETAIL


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: MB_MIGO_BADI. Подтягивание данных в режиме просмотра
СообщениеДобавлено: Вт, ноя 10 2009, 14:10 
Специалист
Специалист

Зарегистрирован:
Чт, сен 04 2008, 12:40
Сообщения: 119
Откуда: Пермь
Пол: Мужской
Номер документа материала, год и позиция передаются в параметре CS_GOITEM метода LINE_MODIFY
Каким образом можно вытащить из прозрачной таблицы данные в методах PBO_DETAIL и PAI_DETAIL? Ведь в этих методах нет никаких параметров, которые бы идентифицировали созданный документ маериала.
В хелпе есть слова, что в PAI_DETAIL надо параметр E_FORCE_CHANGE установить в положение 'X'. В этом случае будет запущен метод LINE_MODIFY. Но ничего из этого у меня не вышло..

_________________
Если долго биться головой об стену, то вскоре в стене появится небольшое отверстие ...


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: MB_MIGO_BADI. Подтягивание данных в режиме просмотра
СообщениеДобавлено: Вт, ноя 10 2009, 20:37 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пт, янв 18 2008, 10:34
Сообщения: 716
Откуда: Moscow
Пол: Мужской
Hexogon написал:
Номер документа материала, год и позиция передаются в параметре CS_GOITEM метода LINE_MODIFY
Каким образом можно вытащить из прозрачной таблицы данные в методах PBO_DETAIL и PAI_DETAIL? Ведь в этих методах нет никаких параметров, которые бы идентифицировали созданный документ маериала.
В хелпе есть слова, что в PAI_DETAIL надо параметр E_FORCE_CHANGE установить в положение 'X'. В этом случае будет запущен метод LINE_MODIFY. Но ничего из этого у меня не вышло..


есть параметр I_LINE_ID который вы и должны заюзать . у вас должна быть заполнена внутренняя табличка с вашей структурой откуда вы и будете тянуть нужную позицию по данному параметру. Советую поглядеть на саповский пример для даного BAdi : класс CL_EXM_IM_MB_MIGO_BADI . :wink:

_________________
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. (Э. Йодан)


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: MB_MIGO_BADI. Подтягивание данных в режиме просмотра
СообщениеДобавлено: Ср, ноя 11 2009, 07:22 
Специалист
Специалист

Зарегистрирован:
Чт, сен 04 2008, 12:40
Сообщения: 119
Откуда: Пермь
Пол: Мужской
ghost написал:
Советую поглядеть на саповский пример для даного BAdi : класс CL_EXM_IM_MB_MIGO_BADI . :wink:

Дк ведь для позиций документа это в примере не реализовано. Для заголока данные из прозрачной таблицы подтягиваются успешно. Потому что метод STATUS_AND_HEADER вызывается первым и в нем заполняется таблица со структурой заголовка. А вот для деталей подобную роль играет метод LINE_MODIFY. Но этот метод вызывается только в случае изменения строки. А при просмотре докмента строка не меняется.
По этому поводу нашел ноту. Но еще не успел разобраться.

_________________
Если долго биться головой об стену, то вскоре в стене появится небольшое отверстие ...


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: MB_MIGO_BADI. Подтягивание данных в режиме просмотра
СообщениеДобавлено: Ср, ноя 11 2009, 08:14 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пт, янв 18 2008, 10:34
Сообщения: 716
Откуда: Moscow
Пол: Мужской
не пойму а что вам мешает в методе STATUS_AND_HEADER заполнять внутреннюю таблицу GT_EXTDATA селектом из таблицы MIGO_BADI_EXAMPL (по примеру если брать) потом которую в PBO_DETAIL и будете использовать. LINE_MODIFY тут вообще не причем. У нас было так сделано .

просто в этом примере показан пример заполнение для заголовка поэтому и стоит следующий селект
Code:
  IF NOT g_no_input IS INITIAL.
    SELECT SINGLE * FROM migo_badi_examp2 INTO gs_exdata_header
       WHERE mblnr = is_gohead-mblnr
       AND   mjahr = is_gohead-mjahr.
  ENDIF.


а в вашем случае там надо его заменить на
Code:
  IF NOT g_no_input IS INITIAL.
    SELECT SINGLE * FROM MIGO_BADI_EXAMPL INTO table GT_EXTDATA
       WHERE mblnr = is_gohead-mblnr
       AND   mjahr = is_gohead-mjahr.
  ENDIF.

_________________
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. (Э. Йодан)


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: MB_MIGO_BADI. Подтягивание данных в режиме просмотра
СообщениеДобавлено: Ср, ноя 11 2009, 08:32 
Специалист
Специалист

Зарегистрирован:
Чт, сен 04 2008, 12:40
Сообщения: 119
Откуда: Пермь
Пол: Мужской
2 ghost: Спасибо!
Да я начал было так делать, но меня смутило, что ZEILE не заполняется в этом методе. Можно конечно использовать I_LINE_ID , но вот на service.sap.com наткнулся на ноту, в которой описывается проблема отображения документа материала в режиме "Просмотр"
NOTE1136344
Symptom

You use the method LINE_MODIFY of the Business Add-In (BAdI) MB_MIGO_BADI to implement customer-defined functions. This implementation works in the create and display mode, but does not work for the document display.


Solution

For the country solution "India", a standard solution is available as an exception with Note 1079123, to be able to depict legal requirements.
For other countries, you can implement the following source code change as a modification, if required. This ensures that LINE_MODIFY is processed also for the document display.
See Note 170183.

_________________
Если долго биться головой об стену, то вскоре в стене появится небольшое отверстие ...


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: MB_MIGO_BADI. Подтягивание данных в режиме просмотра
СообщениеДобавлено: Ср, ноя 11 2009, 08:40 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пт, янв 18 2008, 10:34
Сообщения: 716
Откуда: Moscow
Пол: Мужской
насчет ZEILE че то не понял поуему у вас не заполняется а вот LINE_ID согласен оно не заполняется . У нас так делали
Code:
  IF NOT g_no_input IS INITIAL.
    SELECT * FROM zmigo_badi_pos INTO corresponding fields of table GT_EXTDATA
       WHERE mblnr = is_gohead-mblnr
       AND   mjahr = is_gohead-mjahr.
    FIELD-SYMBOLS: <GT_EXTDATA> type ZMIGO_BADI_SCR.
    LOOP AT GT_EXTDATA assigning <GT_EXTDATA>.
      <GT_EXTDATA>-LINE_ID = sy-tabix.
    ENDLOOP.
  ENDIF.

_________________
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. (Э. Йодан)


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: MB_MIGO_BADI. Подтягивание данных в режиме просмотра
СообщениеДобавлено: Ср, ноя 11 2009, 09:27 
Специалист
Специалист

Зарегистрирован:
Чт, сен 04 2008, 12:40
Сообщения: 119
Откуда: Пермь
Пол: Мужской
Вот как в итоге сделал я.
У нас стоит версия компонента логистика и учет и отчетность SAP_APPL 500 .
На service.sap.com нарыл ноту NOTE1136344. В этой ноте есть ссылка на ноту NOTE1079123. В последней ноте есть Corrections Instructions для разных версий компонента SAP_APPL .
В моем случае код, который приведен в ноте, уже был внесен в систему. Мне осталось только немного модифицировать код в соответствии с первой нотой NOTE1136344 в программе LMIGOKL3 :

Code:
CALL FUNCTION 'J_1BSA_COMPONENT_ACTIVE'
  EXPORTING
    BUKRS                      = cs_goitem-bukrs_for_stock
*{   REPLACE        BUGK915509                                        1
*\    COMPONENT                  = 'IN'
    COMPONENT                  = 'RU'
*}   REPLACE
EXCEPTIONS
   COMPONENT_NOT_ACTIVE       = 1
   OTHERS                     = 2 .

После этой правки метод LINE_MODIFY вызывается перед методом PBO_DETAIL. Таким образом внутренняя таблица gt_extdata оказывается заполненной. Теперь не только в моей разработке пдтягиваются поля, но и в примере внедрения.
Тем не менее, спасибо Ghost, за его "хитрый" код ))

_________________
Если долго биться головой об стену, то вскоре в стене появится небольшое отверстие ...


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

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


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

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


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

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