07-26-2008 2:58 AM
Hi Folks,
How can we find all the tables being accessed by a transaction code ?
Thanks.
07-26-2008 11:11 AM
07-26-2008 8:04 AM
Well, due to the nature of SAP, all transactions trigger programs that access tables So all tables are accessed by transactions as well.
I think you'll have to rephrase your question and tell us what the problem is you're trying to solve.
EDIT: sorry, misread the question and couched up a list of transactions, you're looking for tables.
My first remark still stands.
What do you want to know?
1- which tables can be accessed via transactions? All
2- which tables can directly be accessed via transactions like SE16? Almost all (guessing a little here)
3- which tables have been accessed via transactions? Do a search on "table logging" and "monitoring tools". Also have a look in the sticky thread. There are some interesting reads there as well.
Jurjen
Edited by: Jurjen Heeck on Jul 26, 2008 9:28 AM
07-26-2008 8:35 PM
Hi,
Sorry if my query not clearly put in words.
I am trying to find a way to locate the tables accessed by a trasaction code, for example which all tables are accessed by VK01.
07-26-2008 8:44 PM
Ah, in that case, I think one of the abap forums will suit you better.
There's no direct relation between transaction codes and tables. You'll have to know how to navigate SAP's data dictionary to find out. (SAP course BC400)
Why do you want to know anyway?
Jurjen
07-26-2008 8:50 PM
I wanted to find out this because in many cases that helps a lot.
Like for example, if you know from which table SM59 is capturing all the RFC details, you can find out which RFCs are using a given communication ID.
07-26-2008 9:27 PM
> Like for example, if you know from which table SM59 is capturing all the RFC details, you can find out which RFCs are using a given communication ID.
I'm afraid there's no general shortcut to the F1-F9 approach (get help on a field in a transaction and then get technical details). Some knowledge about the data dictionary structure (and even ABAP) is needed to find the actual table when data is presented to the program via a structure.
07-26-2008 9:33 PM
Thanks Jurjen for rapid response
Let me keep the query open for a while and see if someone knows the trick ( if there is any)
07-26-2008 11:11 AM
07-26-2008 8:31 PM
Thanks for the response.
However, for ST05 option, tcode needs to be executed. And as many a times, we (at our company) don't have access to end user transaction codes.
Is there a way we can find out the tables accessed by a tcode without executing it?
07-26-2008 9:37 PM
> Is there a way we can find out the tables accessed by a tcode without executing it?
There several ways of doing this...
But first:
> However, for ST05 option, tcode needs to be executed. And as many a times, we (at our company) don't have access to end user transaction codes.
You should do this in a test system or development system, as it appears that there is no intention for you to have access to the contents of the table via the application transaction.
You should also be aware that the data (or at least meaningfull data) does not have to be in a table.
Probably the easiest way which works often is for you to use the display transaction to display the data, then place your cursor on the field displaying the data, and then hit F1.
Another approach, would be to go directly to SE93 (or SE80) and display the transaction, and then expand the object list to see which database tables belong to it and try to choose the correct one.
For more a detailed way, you can look through (or scan) the programs for "DATA like" and "SELECT" statements. Finding the module pool, or function group, or (perhaps) global data for them might be more usefull than a specific transaction code to start with (because there may be many).
Either of those three, or a combination of them, will work in most cases.
Cheers,
Julius
07-26-2008 10:06 PM
Thank you to you too Julius for rapid response !!
And ya thanks for the explanation.
07-26-2008 10:47 PM
A note of caution: It cannot be excluded that you choose the wrong table which looks like the right one; or choose the right table but misinterpret the fields and their contents. And that is assuming that the data is in a "table"...
It is very easy to make mistakes.
Take care,
Julius
07-26-2008 11:01 PM
Thanks for caution Julius.
Actually this came to my mind because there are many things in SAP tables (btw most of them reside in tables) which can make your task very effecient.
Like recently, i had to get SU53 for 343 test IDs and then i started to look for table which SU53 accesses to aquire the raw data. Then after searching i found that USR07 contains the data.
Same way, couple of days i had an issue to reset password of a communication ID and i wanted to find the RFCs which are using that ID. which is possible with manual effort thru SM59.
So, per me, it would ease the administration / troubleshooting if you can find the data from tables directly.
07-26-2008 11:23 PM
Yes, it is very tempting and no doubt very efficient quite often...
But I have also made many mistakes, so I only wanted to mention that you must be carefull with the assumptions about tables.
For SM59... which RFC's would depend on the authority of the SYSTEM user in the connection, in the destination system.
Of course there are also release dependencies because the programs and the tables change, so correct assumptions can expire...
Cheers,
Julius
07-26-2008 11:34 PM
07-26-2008 11:51 PM
07-26-2008 11:57 PM
08-13-2015 3:55 PM
Hi All,
Probably the easiest way which works often is for you to use the display transaction to display the data, then place your cursor on the field displaying the data, and then hit F1.
Can you please abbreviate the above line. actually i am looking for some T-codes, which T-code is accessing which Table's.
I kept a trace in ST05 and checked, it was not accurate. Can you please elaborate the answer so that it will help me.
Thanks