Текущее время: Пн, июл 14 2025, 09:05

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: VA42
СообщениеДобавлено: Чт, май 15 2014, 16:40 
Специалист
Специалист

Зарегистрирован:
Вс, янв 11 2009, 11:05
Сообщения: 152
Пол: Мужской
Коллеги, добрый день!
то ли лыжи не едут, то ли где...

вопрос по va42.

в примитиве задача следующая:
при удалении торгового документа нужно выдать сообщение и запретить удаление.
есть всякие экзиты. но я в них не могу ошибку типа 'E' или "W" выдать из-за того, что обработка удаления идет в модуле
Цитата:
PROCESS AFTER INPUT.

* Exit-Commands sofort ausfќhren
MODULE FUNKTION_AUSFUEHREN AT EXIT-COMMAND.

и происходит падение в дамп.

если выдавать сообщение типа 'A', то после выдачи сообщение предлагается сразу выйти из интерфейса.

могу выдать ошибку типа "I", но как в таком случае обломить дальнейшее выполнение? где и какую переменную взвести нужно?

нужно чтобы этот запрет работал и для бапишки и для VA42.

для меня было бы выходом в экзите userexit_check_xvbap_for_delet выдать I-сообщение и выставлять us_exit. но как в этом экзите узнать удаляется только позиция или весь документ? только по fcode чтоли? но тогда как быть я БАПИшкой.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: VA42
СообщениеДобавлено: Пт, май 16 2014, 16:07 
Модератор
Модератор

Зарегистрирован:
Пн, июн 27 2011, 08:25
Сообщения: 479
Эту проблему решал двумя способами:

1) использовал тип A с понятным сообщением - выходило из транзакции, но работало; зато запоминали, почему не удаляется :-)

2) использовал FORM USEREXIT_SAVE_DOCUMENT_PREPARE в MV45AFZZ с проверкой на тип операции
Code:
IF XVBAK_UPDKZ eq 'D' and XVBAK-VBTYP eq 'G'.
*******************
ENDIF.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: VA42  Тема решена
СообщениеДобавлено: Пт, май 16 2014, 21:22 
Специалист
Специалист

Зарегистрирован:
Вс, янв 11 2009, 11:05
Сообщения: 152
Пол: Мужской
с меня требуют чтобы выхода из VA42 не было.
я в USEREXIT_SAVE_DOCUMENT_PREPARE тоже воткнулся, но там трабла тоже есть.
1) для VA42 ошибку типа E по прежнему нельзя давать.
2) при вызове из своего интерфейса бапишки (при удалении) когда вызываешь Е-ошибку, то эта ошибка показывается просто на экране и в RETURN бапишки ничего не попадает. в принципе на брек-поинт поставленный после вызова бапишки программа не попадает.

я сделал так:
1) в userexit_check_xvbap_for_delet отдельно для VA42 по команде LOES в момент прохода первой позиции выдаю I-сообщение и выставляю us_exit. для последующих позиций также выставляю us_exit, но уже без сообщения.
2) в USEREXIT_SAVE_DOCUMENT_PREPARE для VA42 при удалении просто ничего не делаю
а для создания/изменения делаю проверки с E-сообщением + удаление для зетовского интерфейса.

можно было бы удаление перенести полностью в userexit_check_xvbap_for_delet для всех интерфейсов. но для бапишки непонятно как определить удаляю я документ или просто позицию. XVBAK_UPDKZ в тот момент еще не заполнен.

чушь конечно...
вообще непонятно почему удаление как E-команду сделали?


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

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


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

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


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

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