BEFORE_ADD2_WF
This user exit can be used to integrate individual checks before a request is inserted into the TM Workflow Monitor. In addition this exit is often used to force users to provide mandatory attributes before they insert a request manually into TM. By default customers force the users to provide that data before the export of a request by using exit BADI_CHECK_BEFORE_RELEASE. As this exit does not help for manually iserted requests, it needs the BEFORE_ADD2_WF here …
Location for activation
TM Server
Template function Module
/RTC/TM_TMPL_ADD_TO_WORKFLOW
Interface
Import Parameters
Internal table LT_TRKORR
Field | Description |
---|---|
TRKORR | Transport Request |
OWNER | Request Owner |
PJ_NAME | Project that is assigned to the Transport Request |
DESTI_NAME | Destination that is assigned to the Transport Request |
LEVEL_NAME | Name of the initial transport level after insertion |
STATUS | Initial status after insertion |
EXP_DATE | Reference date assigned to the Transport Request (usually the export date) |
EXP_TIME | Reference time assigned to the Transport Request (usually the export time) |
EXP_DATE_ORG | Export date of the Transport Request |
EXP_TIME_ORG | Export time of the Transport Request |
DEP_EXIST | “X” = The Request has collisions with other Requests |
RELATION | “X” = The Request has dependencies to other Requests |
CRIT_OBJ | “W” = Request contains critical objects/aspects of severity “Warning” “E” = Request contains critical objects/aspects of severity “Error” |
S_CLIENT | Source client of the Transport Request |
SHORTTEXT | Short text of the Transport Request |
Export Parameters
Parameter | Type | Shorttext |
---|---|---|
LV_RETCODE | SY-SUBRC | 0: Request will be inserted |
LV_MSGTEXT | /rtc/tm_param-value | Message, that should appear in case of sending return code > 0. |
Example
Requests of a specific 3rd party provider may only be inserted, if there is no other request of that provider still waiting to be imported into at least 1 system (To keep things easy, we only check wether there are requests of that provider in the workflow monitor)…
Step 1 | Copy the function module /RTC/TM_TMPL_ADD_TO_WORKFLOW |
Add the following code:
FIELD-SYMBOLS: <lw_trkorr>.
DATA: lt_req TYPE TABLE OF /RTC/TM_REQ.
* lt_trkorr can only contain 1 record here
LOOP AT lt_trkorr ASSIGNING <lw_trkorr>.
IF <lw_trkorr>-trkorr(3) = ‘EXT’. “SID of the third party dev system
SELECT * FROM /RTC/TM_REQ INTO TABLE lt_req
WHERE trkorr LIKE ‘EXT%’.
IF sy-subrc = 0.
Lv_retcode = 8.
Lv_msgtext = ‘Sorry, at least 1 request is still waiting for import”.
ENDIF.
ENDIF.
ENDLOOP.