Текущее время: Сб, июл 26 2025, 22:13

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


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

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


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

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