使用到的Function和T-code
Function:BP_EVENT_RAISE
T-code:SM62、SM36
1.定义EventID
a.执行SM62
EventID的定义没有严格的要求,一个原则:通过ID名称可以分辨出是有谁创建以及该Event是用来触发那个Job的。
2.为被触发程序Program2定义Background Job。
执行SM36
点击:开始条件->事件后
3.在触发程式Program1中调用激活触发事件的Function
*&---------------------------------------------------------------------*
*& Form FRM_AUTO_TRIGGER_JOB
*&---------------------------------------------------------------------*
* 通过调用事件触发后台作业
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM FRM_AUTO_TRIGGER_JOB .
DATA:g_event(30) TYPE c VALUE 'Event_1_for_Program2'.
CALL FUNCTION 'BP_EVENT_RAISE'
EXPORTING
EVENTID = g_event
EXCEPTIONS
BAD_EVENTID = 1
EVENTID_DOES_NOT_EXIST = 2
EVENTID_MISSING = 3
RAISE_FAILED = 4
OTHERS = 5.
IF SY-SUBRC <> 0.
* Implement suitable error handling here
ENDIF.
ENDFORM. " FRM_AUTO_TRIGGER_JOB
注意:步骤3,和前面两步没有一定先后关系,但一定要保证程序中定义常量或者变量中已定义的或将要定义的Event值以及SM62定义的Event名称要一致。