Текущее время: Вс, июл 27 2025, 03:03

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


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

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


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

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