SAP Function TR_CHECK_OBJECT_LOCK - Check Long-Running Locks for (Sub-)Object (E071)

Parameter Reference Type Length Default Optional Text
IT_TLOCK_ENTRIES TRTLOCKS h 284 X When filled, this table is evaluated instead of the database table
WI_OBJECT E071-OBJECT C 4 Object Type
WI_OBJNAME E071-OBJ_NAME C 120 Object name in object list
WI_PGMID E071-PGMID C 4 Program ID in requests and tasks

Parameter Reference Type Length Text
WE_LOCKABLE_OBJECT TRPARI-S_CHECKED C 1 "X" = Object type lockable; " " = Object type not lockable
WE_LOCKED TRPARI-S_CHECKED C 1 "X" = Object locked; " " = Object unlocked
WE_LOCK_ORDER E070-TRKORR C 20 Current lock request number (transport request/correction request)
WE_LOCK_ORDER_USER E070-AS4USER C 12 User name of request for lock request
WE_LOCK_TASK E070-TRKORR C 20 Request number (transport request) for lock request number
WE_LOCK_TASK_USER E070-AS4USER C 12 User name of current lock request
WE_OBJECT_EDITABLE TRPARI-S_CHECKED C 1 "X" = Object editable by user; " " = Not editable
WE_POSSIBLE_USER_EDIT_TASK E070-TRKORR C 20 Editable with this task number (correction number)

Parameter Reference Length Optional Text
WT_TLOCK TLOCK 284 X All locks within range

Exception Text
EMPTY_KEY Select fields in LOCK_KEY are empty (system error)
NO_SYSTEMNAME System name cannot be determined or invalid length
NO_SYSTEMTYPE System type cannot be determined
UNALLOWED_LOCK_ORDER Request in lock is empty or does not exist


Functions
For a given object (WI_PGMID, WI_OBJECT, WI_OBJNAME), the functionmodule TR_CHECK_OBJECT_LOCK checks the following:
  • whether the object type can be locked (WE_LOCKABLE_OBJECT = 'X')

  • whether the object is currently locked (WE_LOCKED = 'X')

  • The lock can be set for a task or a request. The number and owner ofthis request or task are specified in the parameters WE_LOCK_TASK andWE_LOCK_TASK_USER.
    The parameters WE_LOCK_ORDER and WE_LOCK_ORDER_USER are always filledwith the request number and the appropriate user.
    If the current user is able to edit the object (WE_OBJECT_EDITABLE ='X'), and a lock exists, then the available task is specified(WE_POSSIBLE_USER_EDIT_TASK).
    This function does not update the database.