BADI_CHECK_BEFORE_CHANGE_OWNER

This user exit can be used to start additional checks if someone changes the owner of a transport request in SE10.

Location for activation

Development system

Template function Module

/RTC/TM_TMPL_ BADI_CHNG_OWNER

Interface

Import Parameters

Internal Table LT_TRKORR

Field

Description

Field

Description

TRKORR

Transport Request

TRFUNCTION

Type of the Transport Request (e.g. ‘K’=Workbench, ‘W’=Customizing, ‘T’=Transport of Copies)

OLD_OWNER

Current User

NEW_OWNER

New User

 

Export Parameters

Parameter

Type

Shorttext

Parameter

Type

Shorttext

LV_RETCODE

SY-SUBRC

0: User change can be executed
> 0: User change will not be executed

LV_MSGTEXT

/rtc/tm_param-value

Message, that should appear in case of sending return code > 0.

 

Example

Transport requests containing roles may only be owned by 3 specific users. If some tries to assign ownership to another user => do not accept the user change

Step 1

Copy the function module /RTC/TM_TMPL_ BADI_CHNG_OWNER to a new function module

 

Add the following code to the section “Begin of customer implementation”:

FIELD-SYMBOLS: <lw_trkorr>. IF NOT lt_trkorr[] IS INITIAL. SELECT object FROM e071 INTO lv_object FOR ALL ENTRIES IN lt_trkorr WHERE trkorr = lt_trkorr-trkorr AND object = ‘ACGR’. EXIT. ENDSELECT. ENDIF. IF NOT lv_object IS INITIAL. * Check LT_TRKORR-NEW_USER against allowed owners for role transports * Please not: lt_trkorr is an internal table. Nevertheless it always contains only * 1 request * If there is no match Lv_retcode = 8. Lv_message = ‘User is not allowed ….’. ENDIF. …..