Текущее время: Пн, июл 21 2025, 05:25

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


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

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


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

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