Ver Mensaje Individual
  #3  
Viejo 05/12/08, 10:01:07
Avatar de tunante
tunante tunante is offline
Member
 
Fecha de Ingreso: sep 2007
Mensajes: 82
Aqui tienes la funcion para bloquear una tabla por usuario igual te ayuda

CONCATENATE gv_pernr gv_fecha_parte INTO varkey.

CALL FUNCTION 'ENQUEUE_E_TABLE'
EXPORTING
mode_rstable = 'E'
tabname = 'ZCOCPPACK'
varkey = varkey
x_tabname = 'X'
x_varkey = 'X'
_scope = '3'
* _WAIT = ' '
* _COLLECT = ' '
EXCEPTIONS
foreign_lock = 1
system_failure = 2
OTHERS = 3.

CASE sy-subrc.
WHEN 1.
IF sy-msgty = 'E' AND sy-msgno = 601.
MESSAGE e055(zpco) WITH sy-msgv1.
ELSE.
MESSAGE e055(zpco) WITH 'de otro usuario'.
ENDIF.
WHEN 2.
MESSAGE e055(zpco) WITH 'por fallo en el sistema'.
WHEN 0.

WHEN OTHERS.
MESSAGE e055(zpco) WITH 'sin determinar'.
ENDCASE.

y esta para desbloquear

CALL FUNCTION 'DEQUEUE_E_TABLE'
EXPORTING
mode_rstable = 'E'
tabname = 'ZCOCPPACK'
varkey = varkey
x_tabname = 'X'
x_varkey = 'X'
_scope = '3'
* _SYNCHRON = ' '
* _COLLECT = ' '
.
Responder Con Cita