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

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ 1 сообщение ] 
Автор Сообщение
 Заголовок сообщения: Работа с событиями в системке...
СообщениеДобавлено: Пн, авг 08 2005, 12:22 
Председатель
Председатель
Аватара пользователя

Зарегистрирован:
Вт, авг 17 2004, 14:35
Сообщения: 1519
Откуда: В ВЕЧНОМ БАНЕ
Тут попросили по поводу событий в системе, ну чтобы два раза не отвечать в ПМ, решил ответить один раз на форуме.

Значит так сначала создаем событие и программу которая должна вызваться при старте этого события для этого идем стандартно транзакция SM62 и там создаем пользовательское событие (системные лучше не трогать) напрмер Y_TEST_EVENT после этого идем в планирование заданий SM36 и там планируем наще фоновое задание которое должно стартовать по созданнму событию Y_TEST_EVENT, кстати не забываем ставить там галку "Выполнять задание периодически", потом пишем например программку (SE38 никто не отменял), которая должна стартовать по этому задании, в программке пишем в начале такую функцию как:

Code:
DATA: event_id LIKE tbtco-eventid,
          eventparm LIKE tbtco-eventparm.
     
CALL FUNCTION 'GET_JOB_RUNTIME_INFO'
     IMPORTING
          eventid         = event_id
          eventparm       = eventparm
     EXCEPTIONS
          no_runtime_info = 1

т.е. получить по какому событию была вызвана программа и получить параметры вызова, для чего это можно прикруить, ну скажем для организации паровозика, т.е. в программе когда уже где-либо известен например номер документа проводки или еще какие важные данные, то в экзите делаем такую штуку как:

Code:
DATA: event_id LIKE tbtco-eventid,
          eventparm LIKE tbtco-eventparm.

  CONCATENATE xmkpf-mblnr xmkpf-mjahr INTO eventparm.
  CALL FUNCTION 'BP_EVENT_RAISE'
       EXPORTING
            eventid                = 'Y_TEST_EVENT'
            eventparm              = eventparm
       EXCEPTIONS
            bad_eventid            = 1
            eventid_does_not_exist = 2
            eventid_missing        = 3
            raise_failed           = 4
            OTHERS                 = 5.

т.е. дергаем событие а в качестве параметра передаем номер документа, ну а что дальше делать с номером документа это как говорится от потребностей... :P [/code]


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, авг 13 2008, 07:55 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Чт, мар 09 2006, 10:12
Сообщения: 565
Откуда: Волгодонск
Пол: Мужской
Вот только надо учитывать что эта программа будет в том манданте и под тем пользователем под которым запланировано задание (или для которого запланировано задание)


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ 1 сообщение ] 

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


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

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


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

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