четверг, 21 июля 2011 г.

SM12 Unlock

Маленький код, для unlock'a пользователей.
Потом оформили как транзакцию c вариантом, и отдали пользователем... чтобы могли снимать собственные блокировки в IP.

Сам заблокировал себя, вот пусть сам и снимает :)

*&---------------------------------------------------------------------*
*& Report Z_SM12_LOCK_DELETE
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT Z_SM12_LOCK_DELETE.

PARAMETERS:
pNAME TYPE EQEGRANAME DEFAULT 'RSPLS_S_LOCK_SYNC',
pARG TYPE EQEGRAARG DEFAULT SPACE,
pUNAME TYPE EQEUNAME DEFAULT SY-UNAME,
pEXT TYPE CHAR4 DEFAULT SPACE. "для расширения в будущем

* Example:
*GNAME RSPLS_S_LOCK_SYNC
*GARG 500YIPSO_EMP*
*GUNAME MY_FAV_USER

IF pUNAME = SPACE.
pUNAME = SY-UNAME.
ENDIF.

DATA : ZENQ TYPE STANDARD TABLE OF SEQG3.

CALL FUNCTION 'ENQUE_READ'
EXPORTING
GCLIENT = SY-MANDT
GNAME = pNAME
GARG = pARG
GUNAME = pUNAME
TABLES
ENQ = ZENQ .

IF ZENQ IS NOT INITIAL.

CALL FUNCTION 'ENQUE_DELETE'
TABLES
ENQ = ZENQ .

IF sy-subrc = 0.
write: / 'Unlock.'.
ENDIF.

ELSE.
write: / 'Lock isn''''t found.'.
ENDIF.

Комментариев нет: