Question:
Hi,
I would like to query a table so that I can list all users for a
specific transaction code. Can you tell me the table or table names I
would need to produce a list of users by transaction code? I do not want to use SUIM because I want to query a table from an ABAP so that I can get a list of user names for many t-codes.
Thank you,
Bill
Answer:
Here's a round-about way of getting what you need. Use the following two tables:
AGR_USERS -role to user relationship
AGR_TCODES -role to tcode relationship
By joing the two you should be able to get the information that you require. I find it usefull to know which role is giving the user the particular access versus just knowing that they have the tcode.
Hope this helps.
Answer:
Do note, AGR_TCODES may not have all the tcodes a user has access to given by a role.
Su24 can be configured to bring in extra tcodes not found in the user menu ( AGR_HIER -> AGR_Tcodes). Only the actual profile has this information. The best table in USR12 and if your tables are kept synced, UST12. But then you have to ling AGR_PROF to usr10 to usr12 also.
_________________
John A. Jarboe
Answer:
Thank you datkid001 and John. With the help you both have given me helped me further in my research. AGR_USERS is one of the tables that are needed, the other table is AGR_1251. AGR_1251 is a little tricky to use. When in SE16, the value field for the t-code is case sensitive. Also, there is a delete field, you must utilize this field selecting not equal to 'X'. Problem solved, thank you both. AGR_TCODES was not useable in my situation because there are some roles where the t-code was manually added, it is manually added t-code object that John refers to when he indicated that all t-codes would not show up for a users.
Answer:
Why dont you use the SUIM report that gives you the all the information you needed? Why build a query?
SUIM -> Transactions -> Transactions Executable for User
or use SA38 to run program RSUSR010
Correct me anyone if I am wrong I believe this is as accurate you can get
Answer:
Why dont you use the SUIM report that gives you the all the information you needed? Why build a query?
SUIM -> Transactions -> Transactions Executable for User
or use SA38 to run program RSUSR010
Correct me anyone if I am wrong I believe this is as accurate you can get
You are wrong, SUIM is notoriously inaccurate. You can improve it by regularly syncing the tables it reports from - there is info on how to do it in various places in the forum, you can use sync as the search term & it will provide the info
Answer:
The reason I was looking into building a query is because I was given a list of 249 t-codes. I had to supply the SOX auditors with a list of user names for each t-code. If there is any other way to produce a list of all users for each transaction code requested out of SAP as opposed to creating a query, I am very open minded to this.
Answer:
Do not use the AGR tables for your SOX reports. These tables may not hold the real values. You will have to do a great deal of extra coding to verify the profile and the role are generated in the correct sequence. You can generate a role to create the profile then remove the tcode and "save" (not generate) and the role will indicate the tcode is not there but the profile and the user has the access...
Use tcode OPF0 (4.0 version of SU01). In the pull-down menu select information->overview -Users. then search on S_TCODE and then the tcode (enter in CAPS, the field is case sensitive.)
This will be the most accurate.
Note: Report RSUSR010 only tells you what a user can start NOT finish.
_________________
John A. Jarboe