method IF_SWF_IFS_WORKITEM_EXIT~EVENT_RAISED. * Interface implemented as per: * http://wiki.sdn.sap.com/wiki/display/ABAP/Program+Exits+In+Workflow DATA: lv_action type string, lv_wiid type SWW_WIID, lt_dead type table of SWWDEADLIN, ls_dead type SWWDEADLIN. * Set Break-point. break Username. ***--- Get the context of the workitem. me->wi_context = im_workitem_context. ***--- Extract values. * Action. lv_action = im_workitem_context->get_action_name( ). * WI ID. lv_wiid = im_workitem_context->GET_WORKITEM_ID( ). * Verify current forwarding action inplace. IF im_event_name = swrco_event_before_action and lv_action = swrco_f_forward_workitem. *---> WI_DATTYPE *LE Latest End *DE Requested End *LS Latest Start *DS Requested Start * Create new dummy DL data. ls_dead-WI_DATTYPE = 'LE'. ls_dead-WI_DATE = sy-datlo + 20. ls_dead-WI_TIME = sy-uzeit. append ls_dead to lt_dead. CALL FUNCTION 'SWW_WI_DEADLINES_CHANGE' EXPORTING WI_ID = lv_wiid * DO_COMMIT = 'X' * AUTHORIZATION_CHECKED = ' ' * PRECONDITIONS_CHECKED = ' ' * DEADLINES_CHECKED = ' ' * IMPORTING * DEADLINES_EXIST = TABLES DEADLINE_ATTRIBUTES = lt_dead * EXCEPTIONS * NO_AUTHORIZATION = 1 * INVALID_TYPE = 2 * UPDATE_FAILED = 3 * INVALID_STATUS = 4 * OTHERS = 5 . IF SY-SUBRC <> 0. * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO * WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4. ENDIF. ENDIF. endmethod.