Текущее время: Ср, июл 23 2025, 10:32

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 14 ] 
Автор Сообщение
 Заголовок сообщения: ALV-проваливание в MEKH не работает :(
СообщениеДобавлено: Вт, апр 12 2005, 09:07 
Гость
возникла задача отобрать материалы с заведомо неправильными ценами. Отобрал их в ALV-grid, прикрутил на hotspot-поле MATNR проваливание:

case u_com.

WHEN '&IC1'.
* выделен hotspot

read TABLE grid INDEX sel_lin-tabindex.
case sel_lin-fieldname.
WHEN 'MATNR'.
* выбран номер м-ла, переход на его просмотр
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
EXPORTING
INPUT = grid-matnr
IMPORTING
OUTPUT = grid-matnr.
SET PARAMETER ID 'MAT' FIELD grid-matnr.
SET PARAMETER ID 'MKL' FIELD grid-matkl.

SET PARAMETER ID 'EKO' FIELD '2000'.
SET PARAMETER ID 'MKU' FIELD '0001'.
CALL TRANSACTION 'MEKH'. " AND SKIP FIRST SCREEN.
endcase.

неработает - оно на входе в MEKH не вписывает ничего в поле экрана "материал" и "группа м-ла" :( ... т.е. через set parameter можно только передать закупочную организацию

переделал на call trans 'MM03" - там всё ок, номер корректно передается и транзакция вызывается нормально

что не так с MEKH делаю? м.б. есть еще способ провалиться в нее на просмотр (еще лучше - на редактирование) цены из ALV? или хотябы номер материала на селекционный экран передать, чтобы ручками его не копировать?


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, апр 12 2005, 09:27 
Гость
в инклуде FM06KF01_INITIALIZATION
после

GET PARAMETER ID 'EKO' FIELD I_EKORG.
GET PARAMETER ID 'MKU' FIELD I_KOLIU.

вставь

GET PARAMETER ID 'MAT' FIELD i_matnr.
GET PARAMETER ID 'MKL' FIELD i_matkl.


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, апр 12 2005, 09:31 
Гость
а лучше всего вместо call transaction...

сделай
submit RM06K026
with i_matnr = grid-matnr
with i_matkl = grid-matkl
...
and return.


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения: *
СообщениеДобавлено: Вт, апр 12 2005, 11:22 
Гость
гран мерси :)

я вот подозревал что там в транзакции самой чтото неладно ...


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения: *
СообщениеДобавлено: Вт, апр 12 2005, 11:32 
Гость
попутно вопрос - а чем чревато использование submit вместо call transaction? ткам какието грабли вылезут, или системе фиолетово как вызывать?


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, апр 12 2005, 11:37 
Гость
просто в данном случае транзакция - транзакция к отчету,
поэтому можно так делать.

Но во многих случаях транзакция - это последовательность
экранов, поэтому через SUBMIT ее функционал так просто не вызовешь


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения: Re: *
СообщениеДобавлено: Вт, апр 12 2005, 11:51 
Ассистент
Ассистент
Аватара пользователя

Зарегистрирован:
Ср, апр 06 2005, 06:46
Сообщения: 40
Откуда: Омск
PavelBerezin написал(а):
попутно вопрос - а чем чревато использование submit вместо call transaction? ткам какието грабли вылезут, или системе фиолетово как вызывать?

Когда что удобнее
submit применяется для запуска выполняемых программ В твоем случае действительно лучше вызвать отчет напрямую, чем через транзакцию, так как параметры расставить можно, как душе угодно и не мучиться с GET/SET. Но Сабмитом не вызовешь какой-нибудь функциональный модуль (прога-то не исполняемая)

_________________
С уважением, Антон


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: *
СообщениеДобавлено: Ср, апр 13 2005, 14:38 
Гость
разобрался - попутн овылезли вторые грабли ....похоже MEKH напрочь не хочет интегрироваться с пакетным вводом (SM35 записывает только ее селекционный экран, и привет) :(

А как тогда провести массовое изменение цен в системе? Я загрузил в itab список материалов и новых цен к ним - остается только провести MEKH для каждого из них. Тогда что остаётся - лупить рыночные цены "напрямую" в таблицу KONP? Там попутно с изменением цены ничего другого проводить "впридачу" не надо? м.б. ФМ какой кто подскажет


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения: Re: ALV-проваливание в MEKH не работает :(
СообщениеДобавлено: Чт, апр 14 2005, 07:36 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, сен 09 2004, 07:32
Сообщения: 777
Откуда: Москва
Пол: Мужской
забавная конструкция... :roll:
я имею ввиду с той точки зрения, что, во-первых, домен материала имеет совсем другое преобразование, а, во-вторых, в программе переменная grid-matnr, если объявлена с типом MARA-MATNR, например, уже имеет корректное значение, не требующее преобразования...

PavelBerezin написал(а):
...
WHEN 'MATNR'.
* выбран номер м-ла, переход на его просмотр
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
EXPORTING
INPUT = grid-matnr
IMPORTING
OUTPUT = grid-matnr.
...

_________________
"Прежде чем сделать что-то, подумай, к чему это может привести..."


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: *
СообщениеДобавлено: Чт, апр 14 2005, 10:38 
Гость
просто это делалось в расчёте на корректное проваливание в MEKH по call transaction ... а она (MEKH) не принимает номера материалов дополненные нулями (ругается, что длина номер превышает допустимую) - поэтому без OUTPUT-приедставления там никак


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения: CONVERSION_EXIT... для номера материала
СообщениеДобавлено: Вт, апр 19 2005, 13:02 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Сб, окт 16 2004, 11:27
Сообщения: 348
Откуда: Москау
Пол: Мужской
Вообще говоря, для номера материала следует использовать подпрограмму преобразования MATN1 вместо ALPHA!

ALPHA просто добавляет/убирает ведущие нули в поле в зависмости от его длины, а вот MATN1 работает с настройками номеров материалов...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: CONVERSION_EXIT... для номера материала
СообщениеДобавлено: Вт, апр 19 2005, 13:03 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Сб, окт 16 2004, 11:27
Сообщения: 348
Откуда: Москау
Пол: Мужской
Старик написал:
Вообще говоря, для номера материала следует использовать подпрограмму преобразования MATN1 вместо ALPHA!

ALPHA просто добавляет/убирает ведущие нули в поле в зависмости от его длины, а вот MATN1 работает с настройками номеров материалов...


Это, конечно, не в тему, но так себе, замечание...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: *
СообщениеДобавлено: Ср, апр 20 2005, 06:04 
Гость
а что там кроме дополнения нулями может еще добавиться при преобразовании?


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения: Re: *
СообщениеДобавлено: Ср, апр 20 2005, 08:38 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Сб, окт 16 2004, 11:27
Сообщения: 348
Откуда: Москау
Пол: Мужской
PavelBerezin написал(а):
а что там кроме дополнения нулями может еще добавиться при преобразовании?


Во первых, нумерация материалов может быть внутренней (автоматической, в зависимости от вида материала и чего нибудь еще), а может быть и внешней.

Вот пример... Предположим, по настройкам нумерация внутренняя, разрядность номера 7 знаков.

Пусть в таблице MARA лежит номер материала '000000000000400983'.
После преобразования CONVERSION_EXIT_ALPHA_OUTPUT получим '400983', а после CONVERSION_EXIT_MATN1_OUTPUT '0400983'. Почувствуйте разницу даже в этом элементарном примере!

А еще подпрограмма преобразования MATN1 содержит, в отличие от ALPHA еще кучу всяких проверок, и не всякий номер можно подать на вход ФМ CONVERSION_EXIT_MATN1_INPUT


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

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


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

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


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

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