Inicio
> BASIS > TH_LONG_USR_INFO – Validar que un usuario no se encuentra ya logueado en la transacción
TH_LONG_USR_INFO – Validar que un usuario no se encuentra ya logueado en la transacción
Caso: se busca generar un mensaje de error si el usuario ya se encuentra logueado en la transacción
Solución: utilizamos TH_LONG_USR_INFO
FORM validar_doble_ingreso USING p_mandt TYPE sy-mandt p_uname TYPE sy-uname p_tcode TYPE sy-tcode CHANGING p_error TYPE c. DATA: wterminal LIKE usr41-terminal, wfdpos TYPE sy-fdpos, wmode TYPE sy-modno, user_info TYPE TABLE OF uinfo2, lw_user_info LIKE LINE OF user_info. wmode = sy-modno + 1. CALL FUNCTION 'TERMINAL_ID_GET' EXPORTING username = sy-uname IMPORTING terminal = wterminal EXCEPTIONS multiple_terminal_id = 1 no_terminal_found = 2 OTHERS = 3. SEARCH wterminal FOR '-'. CHECK sy-subrc = 0. wfdpos = sy-fdpos + 1. wterminal = wterminal+wfdpos. REFRESH user_info. CALL FUNCTION 'TH_LONG_USR_INFO' EXPORTING user = '*' TABLES user_info = user_info. * Busco si el usuario tiene una sesión abierta en SISCON READ TABLE user_info INTO lw_user_info WITH KEY client = p_mandt user = p_uname tcode = p_tcode terminal = wterminal. IF sy-subrc EQ 0. p_error = 'X'. ENDIF. ENDFORM. " VALIDAR_DOBLE_INGRESO
Categorías:BASIS
SM04, TERMINAL_ID_GET, TH_LONG_USR_INFO
Comentarios (0)
Trackbacks (0)
Deja un comentario
Trackback