Ситуация очень простая:
Есть саповский отчет, в котором могут выдаваться два сообщения при проверке экранных данных:
MESSAGE E080(MM).
MESSAGE S305(M3).
Также есть ФМ собственной разработки, который вызывает даный отчет:
submit (REPNAME) with selection-table seltab
exporting list to memory
and return.
Необходимо в ФМ отловить сообщения которые происходят внутри отчета. Для решения этой задачи, я вызываю этот ФМ из другого ФМ с добавкой ERROR_MESSAGE.
call function FM
exceptions ERROR_MESSAGE.
if sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty
NUMBER sy-msgno
INTO msg_text.
write: 'Error', msg_txt.
endif.
Но данная конструкция, предложенная САПом, действует только для сообщений типа Е и А, но мне же необходим еще тип S и желательно все остальные тоже! При этом есть еще одна проблема: если на SELECTION-SCREENе отчета выдается первое сообщение(MESSAGE E080(MM)), то при вызове ФМ, который вызвал отчет, мы проваливаемся на экран отчета с сообщением об ошибке, что совсем не требуется!
Итак нужно решить две проблемы:
1) Необходимо получить текст сообщения об ошибке типа 'S' происходящей в отчете, вызываемом через submit
2) Нужно подавлять отображения селекционного экрана отчета на котором происходит ошибка типа 'E' при вызове через submit.
Если кто может, помогите.
