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

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 18 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Ловим сообщения из фун-х модулей(без вывода на экран)
СообщениеДобавлено: Чт, июл 14 2005, 16:37 
Гость
Помогите!
Делаю все как в хелпе сказано(см. в самом низу http://help.sap.com/saphelp_46c/helpdat ... ontent.htm), а в итоге ничего не работает.


CALL FUNCTION 'xxx'
...
EXCEPTIONS ERROR_MESSAGE = 1.
if sy-subrc <> 0.
write 'Error!'.
endif.

Внутри модуля для теста делаю:
message e000.
exit.

И в итоге не работает... не перехватывается сообщение.


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения: Re: Ловим сообщения из фун-х модулей(без вывода на экран)
СообщениеДобавлено: Чт, июл 14 2005, 16:49 
Менеджер
Менеджер

Зарегистрирован:
Вт, дек 07 2004, 10:39
Сообщения: 610
VitalyM написал(а):
Помогите!
Делаю все как в хелпе сказано(см. в самом низу http://help.sap.com/saphelp_46c/helpdat ... ontent.htm), а в итоге ничего не работает.


CALL FUNCTION 'xxx'
...
EXCEPTIONS ERROR_MESSAGE = 1.
if sy-subrc <> 0.
write 'Error!'.
endif.

Внутри модуля для теста делаю:
message e000.
exit.

И в итоге не работает... не перехватывается сообщение.

значит ф-я вываливает sy-subrc отличный от единицы. проверь может она еще какие нить ошибки может выдавать

_________________
полный SAPец


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, июл 14 2005, 16:51 
Гость
message e000 raising ERROR_MESSAGE .

не поможет?


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, июл 14 2005, 16:57 
Гость
Вообщем все заработало, просто я не тот тип сообщения указал случайно, а он могет только E и А.

Но появляется вопрос, а как же тип S и остальные?? :roll:


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, июл 14 2005, 17:04 
Гость
Может есть в природе ФМ, который бы просто отлавливал сообщение и выдавал его текст на выходе??? Под "отлавливал" я имею в виду не только распозновал, но и подавлял вывод на экран.


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, июл 14 2005, 17:09 
Почетный гуру
Почетный гуру

Зарегистрирован:
Вт, авг 17 2004, 10:45
Сообщения: 550
Откуда: SAP_BASIS 640
Используйте Class-based error handling. Очень удобная штука.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июл 15 2005, 07:14 
Гость
ПОдскажите пожалуйста это что такое и в каком направлении смотреть. Спасибо!


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июл 15 2005, 09:51 
Почетный гуру
Почетный гуру

Зарегистрирован:
Вт, авг 17 2004, 10:45
Сообщения: 550
Откуда: SAP_BASIS 640
Немного перепутал. На самом деле речь шла о Class-Based Exceptions handling, что, конечно, не одно и тоже, но похоже.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июл 15 2005, 10:47 
Гость
Вообще, как я понял, там обработка только обычных исключений идет, а также Catchable Runtime Errors. То есть ситуация такая же как и с использованием ERROR_MESSAGE. А мне бы все типы ошибок отлавливать... :?


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июл 15 2005, 10:57 
Почетный гуру
Почетный гуру

Зарегистрирован:
Вт, авг 17 2004, 10:45
Сообщения: 550
Откуда: SAP_BASIS 640
Я не очень понял - Вам нужно подавлять сообщения стандартных функциональных модулей и выдавать вместо них свои сообщения?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июл 15 2005, 11:13 
Гость
Ситуация очень простая:

Есть саповский отчет, в котором могут выдаваться два сообщения при проверке экранных данных:

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.

Если кто может, помогите. :(


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июл 15 2005, 12:29 
Почетный гуру
Почетный гуру

Зарегистрирован:
Вт, авг 17 2004, 10:45
Сообщения: 550
Откуда: SAP_BASIS 640
Дело пахнет копированием саповского отчёта...


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июл 15 2005, 12:37 
Гость
Да нет, дело пахнет поиском нового способа исполнения отчетов без использования submit, т.к. отчеты могут быть совершенно разные... :x


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июл 15 2005, 12:56 
Гость
Я все-таки не пойму, если это свой отчет, своя функция,
то почему нельзя делать

В функции:

EXCEPTIONS
er1
er2
...
...

message e001 raising er1.
...
message e002 raising er2.


При вызове функции из програмы -
анализировать номер EXCEPTION,
а потом находить текст сообщения
в табличке T100 ?


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июл 15 2005, 12:59 
Гость
Нет, как я уже и говорил отчет саповский и могут быть вообще любые отчеты со своими сообщениями об ошибках, необходимо все отловить(без вывода на экран) и получить текст...


Принять этот ответ
Вернуться к началу
  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 18 ]  На страницу 1, 2  След.

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


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

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


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

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