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

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 2 ] 
Автор Сообщение
 Заголовок сообщения: Использование ФМ WS_REVERSE_GOODS_ISSUE
СообщениеДобавлено: Чт, фев 09 2012, 14:43 
Гуру-маршал
Гуру-маршал
Аватара пользователя

Зарегистрирован:
Пт, янв 30 2009, 09:59
Сообщения: 1594
Откуда: Москва, Минск
Пол: Мужской
Добрый день, коллеги.
Для сторнирования документа материала, созданного по поставке, использую ФМ WS_REVERSE_GOODS_ISSUE.
Журнал сообщений T_MESG не всегда содержит сообщения об ошибках, если документ сторно не создан.
ФМ возвращает sy-subrc = 1.
Например, если попытаться сторнировать документ материала датой проводки, которая меньше даты фактического отпуска, таблица сообщений об ошибках пустая, при этом документ сторно не создается.
Если попытаться выполнить сторно через VL09, в которой выполняется вызов ФМ WS_REVERSE_GOODS_ISSUE, таблица сообщений также будет пуста, НО! затем в программе выполняется вывод журнала сообщений, который все-таки где-то заполняется.
В журнале выводится соответсующее сообщение об ошибке(VL-626).
Не думаю, что я первый, кто столкнулся с такой ситуацией. Может быть у кого-то получилось все таки получить полный журнал сообщений при вызове этого ФМ?

_________________
Лучше быть умным и иногда тупить, чем быть тупым и постоянно умничать!


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Использование ФМ WS_REVERSE_GOODS_ISSUE  Тема решена
СообщениеДобавлено: Чт, фев 09 2012, 17:09 
Гуру-маршал
Гуру-маршал
Аватара пользователя

Зарегистрирован:
Пт, янв 30 2009, 09:59
Сообщения: 1594
Откуда: Москва, Минск
Пол: Мужской
Ну вообщем получилось сделать по аналогии как в VL09.

Перед вызовом ФМ WS_REVERSE_GOODS_ISSUE вызываем следующую конструкцию:
data:ident like sy-uzeit.
ident = sy-uzeit.
call function 'MESSAGES_INITIALIZE'
EXPORTING
i_identification = ident
IMPORTING
e_identification = ident
EXCEPTIONS
others = 0.
call function 'MESSAGES_ACTIVE'
EXCEPTIONS
others = 1.

После того, как ФМ отработал и Sy-subrc <> 0.
Смотрим есть ли сообщения в t_mesg.
Если сообщений нет:
*Получаем их
CALL FUNCTION 'MESSAGES_GIVE'
TABLES
T_MESG = lt_mesg.
Выводим сообщение типа A или E из lt_mesg.
Как-то так.

_________________
Лучше быть умным и иногда тупить, чем быть тупым и постоянно умничать!


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

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


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

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


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

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