PDA

Ver la Versión Completa : Necesito saber los modos de cada usuario


abelsap
29/10/09, 11:26:55
Hola a todos,

esta es la primera vez que escribo en el foro, pero tengo un problema y no he encontrado manera de solucionarlo.

Lo que necesito es alguna forma, (transacción, campo de tabla , tabla..) que me permita obtener por cada usuario el tcode de los modos que tiene activos en cada instante, porque lo que quiero implementar es una transaccion que limite el uso de transacciones haciendo que un usuario no pueda tener mas de 1 de ciertas transacciones clave, abiertas a la vez.

Espero haber sido claro con lo que necesito, y que me podais ayudar lo antes posible.

Un saludo y gracias de antemano.:D

yapbig
29/10/09, 12:04:28
Con la TRX SM4 ves todos los usuarios conectados y sus modos abiertos con c/u de las TRX's que esté ejecutando en el momento.

Saludos...

yapbig
29/10/09, 12:05:18
perdón, la TRX es la SM04

abelsap
30/10/09, 07:10:55
Si ya sabia que la tx sm04, mostraba todos los usuarios con sus respectivos modos, pero no entiendo bien la forma que tiene para poder relacionar cada informacion de usuario con la información de modos, es ahi donde quiero llegar pero no lo he conseguido..

DavidXD_XD
30/10/09, 19:15:21
Hola, puedes hacer lo siguiente ... wueno todo esta en el codigo de la SM04

* Variables Globales
DATA: gt_user TYPE TABLE OF uinfo WITH HEADER LINE,
g_opcode TYPE x VALUE 2.

* Recuperando todos los modos
CALL 'ThUsrInfo' ID 'OPCODE' FIELD g_opcode
ID 'TAB' FIELD gt_user-*sys*.

En la variable gt_user tendrias que ordenarlo por usuario despues y a partir de ahi jugar como quieras, espero te pueda ayudar :D

abelsap
03/11/09, 07:47:53
Muchas Gracias por la info, ahora solo me queda realacionar la informacion de los usuarios con sus transacciones :D

abelsap
03/11/09, 11:40:24
Gracias por tu respuesta David, me ha servido de mucho, aunque ahora tengo otro problema que quizas em puedas ayudar a resolver porque no lo consigo encontrar.

Con esto que me has pasado obtengo toda la informacion de usuarios, y esta genial, pero a parte de eso necesito la estructura donde se guardan las diferentes transacciones por usuario.

Espero que me puedas ayudar.

Gracias.

DavidXD_XD
03/11/09, 14:28:58
Hola Abel, te refieres a la estructura uinfo??

abelsap
04/11/09, 07:25:43
Pues la verdad es que no lo se... aunque creo que toda la informacion que puede contener la estructura uinfo que es la que ya obtengo con la call que me pasaste, lo que ahora necesito es poder saber todas las transacciones abiertas por usuario, que en principio cuando miro con f1 los datos tecnicos de esa ventana me dice que pertenecen a la estructura modus, pero claro el problema es que solo puedo ver el numero 1 de dicha estructura, no todos los que hay en verdad...

DavidXD_XD
04/11/09, 14:24:22
Ya t entendi ... pues esa tabla interna q t bota solo arroja el numero de modos que tiene el usuario mas no el detalle, dame un tiempo y t investigo como puede ser para poder saber el detalle por usuario, puedes ir mirando el programa RSM04000_ALV, de ahi toy sacando todo :D

ballan
04/11/09, 14:26:46
Prueba con la funcion TH_LONG_USR_INFO si pones un * te devuelve todos los modos de todos los usuarios

DavidXD_XD
04/11/09, 15:01:22
Listo ya la tengo ... esta si te imprime el detalle de cada modo por usuario, espero te pueda ayudar :D

DATA : th_opcode(1) TYPE x,
opcode_long_usr_info LIKE th_opcode VALUE 32.

DATA : BEGIN OF itab OCCURS 0,
name LIKE sy-uname,
END OF itab.
DATA : itab1 LIKE uinfo2 OCCURS 0 WITH HEADER LINE.

SELECT bname FROM usr41 INTO TABLE itab WHERE bname = sy-uname.
DELETE ADJACENT DUPLICATES FROM itab.
LOOP AT itab.
CALL 'ThUsrInfo' ID 'OPCODE' FIELD opcode_long_usr_info
ID 'USER' FIELD itab-name
ID 'TAB' FIELD itab1-*sys*.
ENDLOOP.

abelsap
06/11/09, 08:01:39
Muchas gracias David, todo lo que me has dixo me ha ayudado musiximo.:D

DavidXD_XD
06/11/09, 14:14:38
D nada :D, pero es más óptimo lo que recomienda Ballan, jeje no me fui x el lado de funciones :p , pero esa funcion tbm te bota con el * todos los modos con todos los usuarios al detalle, pero el inconveniente es que no te detalla todos los campos, q bueno q t sirva la ayuda d todos. .... Slds !! :D