Sapforum.Biz

Инструменты => ABAP - Инструментальные средства => Тема начата: ali от Декабрь 28, 2011, 12:44:33 pm

Название: USEREXIT_SAVE_DOCUMENT_PREPARE.
Отправлено: ali от Декабрь 28, 2011, 12:44:33 pm
Доброго времени суток всем!
Кто знает, прошу помочь в данном вопросе. Дело в том, что я создаю заказ на закупку при создании заказа сбытового и весь свой код прописываю в подпрограмме USEREXIT_SAVE_DOCUMENT_PREPARE(отрабатывается при нажатии кнопки СОХРАНИТЬ сбытового заказа). Меня просят о том, чтобы если при создании закупочного заказа возникла ошибка, необходимо не допустить сохранение сбытового заказа. Собственно я луплю таблицу ретёрн для BAPI_PO_CREATE1, и в случае ошибки не допускаю его сохранения, вывожу лог сообщений, это все понятно. Но каким образом мне не допустить сохранения сбытового заказа? должен ли я это делать в каком-то другом user-exit'е?
Вобщем у меня совсем нет идей пока. Буду признателен помощи.
Название: Re: USEREXIT_SAVE_DOCUMENT_PREPARE.
Отправлено: ali от Январь 07, 2012, 09:22:06 am
Доброго всем времени суток!
Если это мой вопрос так непонятен, то скажите мне об этом, я постараюсь его лучше перефразировать) Или люди еще отдыхают на НГ) это тоже можно понять=)
Название: Re: USEREXIT_SAVE_DOCUMENT_PREPARE.
Отправлено: Uukrul от Январь 07, 2012, 11:52:51 am
You are not allowed to view links. Register or Login
перефразировать) Или люди еще отдыхают на НГ) это тоже можно понять=)
Ну думаю до числа 12 как-то тихо будет, так как все таки отдыхают... По поводу вопроса не ясно в чем проблема? В экзите информацию о том создан заказ ММ или нет ты я так понял получаешь?! Ну раз там весь код прописан. Что мешает выдать сообщение вида Exxx  в этом экзите?

PS: Я не очень знаю подсистему экзитов SD так что возможно ответил что-то не то :-)
Название: Re: USEREXIT_SAVE_DOCUMENT_PREPARE.
Отправлено: tav_48 от Январь 11, 2012, 08:29:39 am
Вот как правильно выводить сообщение об ошибке при сохранении сбытового заказа в USEREXIT_SAVE_DOCUMENT_PREPARE:

Код: You are not allowed to view links. Register or Login
IF fcode <> fcode_beleg_loeschen.   " удаление
  FCODE = FCODE_GLEICHE_SEITE.
  MESSAGE e123(xxx) WITH 'Ошибка сохранения...'.
  PERFORM FCODE_BEARBEITEN.
ENDIF.