Table logging captures all table changes. This blog will answer the following questions:
- How to activate table logging in general?
- How to check if for specific table the logging is active?
- How to check table changes for a specific customizing action?
- How to check general table change?
- How to delete table logging?
- When not to use table logging?
Table logging activation
In RZ11 system parameter Rec/Client determines the table logging for the complete system. Make sure the value is set to ALL.
See also OSS note 2437986 – SCU3 | How to enable logging in the system.
Table logging per table
In transaction SE11 enter the table you want to check and then goto the technical settings. As example table T000:
At the section Data Changes you can see that Log Changes has been activated.
How to view table changes?
The common way to view table changes is via transaction SCU3. At the start screen press the button analyze logs:
In the next selection screen enter the table to analyze. In this example we analyze table T000:
Make sure to set the radio button to Tables. Output of the changes to table T000 then looks as follows:
Here you can see changes done by user ILLEGALUSER. At which date and time they were done, and the old and new value.
Checking table changes from customizing
If you are in a customizing action and you want to see who did perform changes, select the menu Utilities and then option Change Log. Select date and time frame to analyze and press Execute. As example here changes to Plant Definition (table T001W):
Custom tables and standard SAP tables
By default a lot of SAP configuration and important setting tables have the log changes activated. But not all. It is not uncommon to activate table logging for standard SAP configuration tables important for your business. For important custom configuration Z tables you might want to activate table logging.
Table logging is not a replacement for change documents. Standard SAP generates change documents for changes to documents that must be kept for tracking and audit purposes. This is common for all major transnational objects and its underlying tables. That is why for example for an important table like VBAK (sales order header) the table logging is off: change documents are already generated.
It is very bad practice to make use of table logging for business data reasons. Table logging is used for recording changes to configuration and if all theses logs are deleted there should be no business impact.
Deletion of table logging
Table logging can be deleted with transaction SLG2.
Make sure only very limited amount of people have access to SLG2 and the below program SBAL_DELETE.
SLG2 can run for a long time. For background read OSS note 2507213 – SBAL_DELETE runs too long.
Other bug fix notes:
- 2770800 – Application log deletion table is taking very long time
- 2957039 – DBSQL_TOO_MANY_OPEN_CURSOR in SBAL_DELETE