2007 Nov 05 10:27 PM
Hi All,
We currently have a project requirement where we need to report all the transactions run by a (rather large) set of users over a certain period of time (e.g. last week).
The system in consideration is an ECC 6.0 instance.
My questions is: What is the best practice method to perform this type of activity?
Is it by using SAP standard transactions (e.g. SM20, STAD, ST03, etc) or are there programs that can elegantly provide the desired data in the desired format?
We did review SAP standard transactions and found them lacking one way or another (e.g. STAD does not allow us to filter by user, ST03 requires us to manually click on each user to identify the transactions run by them, etc). At this point - the ABAP code route appears attractive to us
Any IC and/or tips in the matter would be greatly appreciated <b><REMOVED BY MODERATOR></b>.
Thanks.
Scott
Message was edited by:
Alvaro Tejada Galindo
Hi All,
We currently have a project requirement where we need to report all the transactions run by a (rather large) set of users over a certain period of time (e.g. last week).
The system in consideration is an ECC 6.0 instance.
My questions is: What is the best practice method to perform this type of activity?
Is it by using SAP standard transactions (e.g. SM20, STAD, ST03, etc) or are there programs that can elegantly provide the desired data in the desired format?
We did review SAP standard transactions and found them lacking one way or another (e.g. STAD does not allow us to filter by user, ST03 requires us to manually click on each user to identify the transactions run by them, etc). At this point - the ABAP code route appears attractive to us
Any IC and/or tips in the matter would be greatly appreciated <b><REMOVED BY MODERATOR></b>.
Thanks.
Scott
Message was edited by:
Alvaro Tejada Galindo
2007 Nov 05 10:48 PM
Hi Scott,
You may be thinking getting the data using ABAP, but eventually you may end up that, it requires lots of data and may not be able to store them in any Z table.
Check this link may guide you,
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/webcontent/uuid/9c9b367a-0901-0010-979a-b9196... [original link is broken]
I think the STAD and ST03 are the best way.
Regards,
Atish
2007 Nov 06 2:25 PM
I work for IBM and found the answer in house. Here it is:
The standard ways of determining the transaction usage would require you to activate statistics or the system-wide logging which can potentially consume huge amounts of disk space besides causing performance isues. Also check to see if ERP 6.0 supports specific transactions meant for auditig certain users; I do recall the security team talk about the same here but this needs to be checked out.
Alternatively you can use the enhancement S38MREP1 and the function module exit component within the same to code in your logic to track transaction usage; this gets called at the start of each transaction including development transactions. You can restrict your code to look at a specific set of transactions or just custom Ztransactions alone.
Within the exit, code in logic that would populate a custom table (preferably in update task) where you can track the caller(s)(specific list of callers if needed) of the concerned transactions, date of call, number of times the transaction was called, IP addresses etc. We had used teh same to analyze the active transactions being used in a 4.6C system for upgrade purposes and had no issues whatsoever with performance.
Additionally you may need to develop a simple ALV report to report off of this table(s).
| User | Count |
|---|---|
| 3 | |
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |