Меню

Транзакция SM02: сообщения в SAP системе

|

Транзакция SM02: сообщения в SAP системе

У пользователей или консультантов может появиться необходимость сообщить что-то всем пользователям системы, сделать срочное и важное заявление. :)

Например, предупредить об остановке системы, времени недоступности или проблемах с оборудованием. Иногда надо сообщить об обновленной инструкции, справочнике или появлении пакета поддержки (патча) для клиентского места SAP GUI, который необходимо установить. Во всех этих случаях поможет транзакция SM02.

Основной экран транзакции представляет собой рабочую область (список уже созданных сообщений, если они есть) и панель с кнопками (Рис. 1).

Рис. 1. Основной экран транзакции SM02.

Кнопки на панели дублируют пункты меню "Перейти к" (Рис. 2).

Рис. 2. Основные функции транзакции SM02.

Для создания нового сообщения необходимо вызвать пункт меню "Перейти к -> Создать" или нажать соответствующую кнопку на панели. В появившемся диалоговом окне ввести текст сообщения. Для этого доступны только три строки. Переход между строчками осуществляется по кнопкам вверх-вниз на клавиатуре. Имейте ввиду, что случайное нажатие кнопки "Enter" в попытке перейти на следующую строку отправит сообщение в обработку. В следующих полях можно ограничить сообщение диалоговой инстанцией, мандантом или языком, под которым пользователи вошли в систему. Если хотите отправить сообщение всем пользователям, то эти поля заполнять не надо. Далее необходимо указать дату/время, до

Если хотите прочитать статью полностью и оставить свои комментарии присоединяйтесь к sapland

У вас уже есть учетная запись?

Войти

Обсуждения Количество комментариев11

Комментарий от  

Олег Башкатов

  |  12 сентября 2014, 13:19

С помощью ФМ TH_POPUP можно отправить сообщение конкретному пользователю :-)

Комментарий от  

Олег Точенюк

  |  12 сентября 2014, 20:31

"У пользователей или консультантов может появиться необходимость сообщить что-то всем пользователям системы, сделать срочное и важное заявление. :)" - Ну у пользователей и консультантов конечно же может быть такое желание, вот только в 99.9% возможности такой у них быть не должно... для этих целей вообще-то базисник должен быть, который по процедуре данные сообщения и выставляет.

Комментарий от  

Вячеслав Шиболов

  |  17 сентября 2014, 16:41

"У пользователей или консультантов может появиться необходимость сообщить что-то всем пользователям системы, сделать срочное и важное заявление. :)" - Ну у пользователей и консультантов конечно же может быть такое желание, вот только в 99.9% возможности такой у них быть не должно... для этих целей вообще-то базисник должен быть, который по процедуре данные сообщения и выставляет.

Конечно, Олег, вы правы. Всё разграничивается правами и полномочиями. Но у кого они должны быть и есть, у того и может возникнуть законное желание написать сообщение всем в системе, вне зависимости от того, как этот человек именуется в социальной иерархии системы - пользователь, консультант или базисник. :)

Комментарий от  

Олег Точенюк

  |  17 сентября 2014, 17:36

Конечно, Олег, вы правы. Всё разграничивается правами и полномочиями. Но у кого они должны быть и есть, у того и может возникнуть законное желание написать сообщение всем в системе, вне зависимости от того, как этот человек именуется в социальной иерархии системы - пользователь, консультант или базисник. :)

Честно у пользователей и консультантов таких прав не встречал практически. Хотя ситуации могут быть разные.

Комментарий от  

Евгений Никонов

  |  22 сентября 2014, 08:20

Честно у пользователей и консультантов таких прав не встречал практически. Хотя ситуации могут быть разные.

У консультантов тоже бывают такие права.

Комментарий от  

Василий Ковальский

  |  22 сентября 2014, 12:32

Конечно, Олег, вы правы. Всё разграничивается правами и полномочиями. Но у кого они должны быть и есть, у того и может возникнуть законное желание написать сообщение всем в системе, вне зависимости от того, как этот человек именуется в социальной иерархии системы - пользователь, консультант или базисник. :)

Сразу возникает задача, как поставить в игнор всех кроме сисадмина
:)

Комментарий от  

Дмитрий Трусов

  |  22 сентября 2014, 18:22

С помощью ФМ TH_POPUP можно отправить сообщение конкретному пользователю :-)

Во, можно чат сделать))))

Комментарий от  

Олег Точенюк

  |  22 сентября 2014, 21:47

Сразу возникает задача, как поставить в игнор всех кроме сисадмина
:)

Василий, да это вообще не проблема оказывается. В общем идете в программу, точнее модуль: SAPMSEM1, со строчки 881 будет нечто такое:
 
*---------------------------------------------------------------------
*       MODULE CHECK_DIAG_SUPPBIT_NOSYSMSG
*---------------------------------------------------------------------
*       Falls das Frontend keine Systemnachrichten anzeigen kann
*---------------------------------------------------------------------
form check_diag_suppbit_nosysmsg.
  data: support_bit type i.
 
  call 'C_GUI_SUPPORT'
     id 'FEATURE' field 'NOSYSMSG'
     id 'VALUE' field support_bit.
 
  if sy-subrc = 0 and support_bit = 1.
*    suppress system message - do not display
*    no database update
*    PERFORM C_DY_EXIT.
    set screen 0.
    leave screen.
  endif.
endform.                    "CHECK_DIAG_SUPPBIT_NOSYSMSG
 
Ну т.е. оно проверяет поддерживает ли фронтэнд вывод окошка с ообщением. Если нет, тогда на выход. Ну а дальше вставляем неявный энхансмент в конец данной подпрограммки где.. ну скажем так читаем пользовательскую табличку, куда помещаем наших базисников и других людей, которых не стоит беспокоить своими сообщениями :-) ну или скажем так, можно дальше полет мысли запустить и там еще группы намутить, типа если это отправляет пользователь Х, то сообщение показывать только группе пользователей Х/Y/Z например. Короче и только компилятор может теперь ограничить пытливый ум начинающего абапера...

Комментарий от  

Олег Точенюк

  |  22 сентября 2014, 21:52

Василий, да это вообще не проблема оказывается. В общем идете в программу, точнее модуль: SAPMSEM1, со строчки 881 будет нечто такое:
 
*---------------------------------------------------------------------
*       MODULE CHECK_DIAG_SUPPBIT_NOSYSMSG
*---------------------------------------------------------------------
*       Falls das Frontend keine Systemnachrichten anzeigen kann
*---------------------------------------------------------------------
form check_diag_suppbit_nosysmsg.
  data: support_bit type i.
 
  call 'C_GUI_SUPPORT'
     id 'FEATURE' field 'NOSYSMSG'
     id 'VALUE' field support_bit.
 
  if sy-subrc = 0 and support_bit = 1.
*    suppress system message - do not display
*    no database update
*    PERFORM C_DY_EXIT.
    set screen 0.
    leave screen.
  endif.
endform.                    "CHECK_DIAG_SUPPBIT_NOSYSMSG
 
Ну т.е. оно проверяет поддерживает ли фронтэнд вывод окошка с ообщением. Если нет, тогда на выход. Ну а дальше вставляем неявный энхансмент в конец данной подпрограммки где.. ну скажем так читаем пользовательскую табличку, куда помещаем наших базисников и других людей, которых не стоит беспокоить своими сообщениями :-) ну или скажем так, можно дальше полет мысли запустить и там еще группы намутить, типа если это отправляет пользователь Х, то сообщение показывать только группе пользователей Х/Y/Z например. Короче и только компилятор может теперь ограничить пытливый ум начинающего абапера...

И это, пытливые абап-умы аккуратнее там надо все делать, а то если криво расширение реализовать, пользватель даже GUI не запустит :-)

Комментарий от  

Олег Башкатов

  |  23 сентября 2014, 10:49

Сразу возникает задача, как поставить в игнор всех кроме сисадмина
:)

Лучшая практика показывает, что сисадмин/базисник о состоянии системы и планах проведения работ должен узнавать из других источников нежели информация от кого-то из SM02 :-)

Комментарий от  

Артем Кощеев

  |  03 сентября 2015, 11:33

Во, можно чат сделать))))

А разве она не на конкретном сервере приложений работает? Если пользователь на другом (ну в случае, если их несколько, конечно).