Find the Fields or Tables accessed for a Transaction

A common way to find the technical data underlying a transaction is to place your cursor in the field, press the key F1, and then click on the button Technical Data to see the details. This works as long as you are looking at the transparent Table. If the information is populated from a structure, then this will not help you because the structure may be populated from a number of sources including some includes, and may also contain some calculated fields. If the include is in fact a table, then chances are your data comes from that table. Check to see if there is a logical database in the business area you are looking at. Looking at the structure of the logical database often reveals the tables used to drive that business area. Also check to see if the field name you are looking for is in any of the tables. Logical databases can also be useful in determining how tables are linked together.

You may also use other methods (listed below) to zero-in on the field. You can perform any of these, in isolation or in combination, until you find what you are looking for:

  • Debugging (/H)
  • SQL Trace (ST05)
  • Run-time Analysis (SE30)

Start the transaction in Debug mode. Set a watch-point for the structure-field you are interested in. When the debugger breaks, look at the lines just above the break-point. This will show where the field was populated. This may be a structure, in which case you will restart the process using that structure as a watch-point. Turn SQL Trace on, and run your transaction. Switch the trace off, and examine the log. This will detail the tables hit, and the order in which they were hit. Not all tables hit will be displayed; for example, configuration tables tend not to show up, as they are buffered. The Runtime Analysis(SE30) will show all tables accessed by the transaction.

Comments