For SAP to work the way you need it to in your company, you have to adjust the system extensively to the individual requirements of your organization – this is also known as “customizing”. If the customizing is changed, the way your SAP system behaves is also changed. Therefore, you should always be able to know whether any such far-reaching changes have taken place in your SAP system. This means it should be possible for you to keep a trace of far-reaching changes to the SAP system in a documented and tamper-proof auditable manner. Now let me show you how this is done!
No traceability without Table Logging
In SAP, there is table logging for logging very critical tables. In table logging, you can include various tables or deactivate logging. However, before you make the effort to select different tables for logging or to check everything that is logged, the table logging mechanism must be switched on. Otherwise, all your hard work will be for nothing!
To enable table logging, the SAP Profile parameter rec/client must be set to active. To check this, use the SAP report RSPARAM, which you can call up from the SAP GUI. If this is set to "off", or not all relevant (productive) clients are listed, then you can stop immediately – in the knowledge that nothing will be logged.
What is actually being logged?
If table logging is activated, you can focus your attention on the tables to be logged. The Customizing settings in SAP are also stored in tables in the SAP database. These usually begin with T, for example:
- T012: House Banks
- T042: Parameters for payment transactions
- T004: Directory of Charts of Accounts
- T001: Company Codes
- T033: Depreciation area
The tables to be logged can be defined using transaction SE13:
If you want to check which tables are being logged, you will find what you are looking for in the SAP Table “DD09L”. There you can check whether logging is activated for an SAP table (table DD09L field PROTOKOLL). You can view the table with SAP transaction SE16 or SE16N.
All changes are then stored in the table “DBTABLOG” and can always be traced there.
Important tables that are relevant for table logging are, for example, the following:
- T000 Clients Table
- T001* Company Codes
- T003* Document Types, Operation Types, Order Types
- T004* Directory of Charts of Accounts
- T007* Tax Keys
- T008* Blocking Reasons for Automatic Payment Transactions
- T012* House Banks
- T030 Standard Accounts Table
- T033* FI Depreciation Area
- T042* Parameters for payment transactions
- T044A Foreign Currency Valuation Methods
- T044Z Customer/Vendor Accounts with Changed Reconciliation Account
- T074 Special G/L Accounts
- T077* Customer Account Groups, Vendor Account Groups, G/L Account Groups
- T078* Transaction-dependent screen selection for customer / vendor / G/L master
- T079* Company code-dependent screen selection for customer / vendor master
- T169* Invoice Verification/Valuation
- TACTZ Valid activities for each authorization object
- TADIR Directory of Repository Objects
- TBAER Rules for Changing Documents
- TBRG Authorization groups
- TCUR* Configuration of exchange rates
- TDDAT Maintenance Areas for Tables
- TDEVC Development Classes/Packages
- TSTC List of all SAP transaction codes
Further sources on the topic:
- rec/client parameter in the system profile
- Thomas Tiede: Ordnungsmäßigkeit und Prüfung des SAP-Systems (OPSAP), 3rd edition [in German], p. 490ff
- SAP Note 112388
- What is table logging?