Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

SAP Tables accesses by a tcode

Former Member
0 Kudos

Hi Folks,

How can we find all the tables being accessed by a transaction code ?

Thanks.

1 ACCEPTED SOLUTION

Former Member
0 Kudos

Perhaps ST05 is what you are looking for?

17 REPLIES 17

jurjen_heeck
Active Contributor
0 Kudos

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

0 Kudos

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.

0 Kudos

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

0 Kudos

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.

0 Kudos

> 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.

0 Kudos

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)

Former Member
0 Kudos

Perhaps ST05 is what you are looking for?

0 Kudos

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?

0 Kudos

> 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

0 Kudos

Thank you to you too Julius for rapid response !!

And ya thanks for the explanation.

0 Kudos

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

0 Kudos

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.

0 Kudos

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 example, for SU53 see:

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

0 Kudos

Once again Thanks Julius !!!

> For example, for SU53 see:

As a matter of fact Prasad, who posted forum that, is my friend

We had a healthy discussion that time also and today also.

0 Kudos

Small world

Please send Prasad my kind regards,

Julius

0 Kudos

Ya.

Sure, i'll do that.

former_member432274
Participant
0 Kudos

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