REPTRAN is a program to quickly download ABAP code.
Usage is simple: start program REPTRAN and enter which program to download:
Run program and see the output:
Source code is downloaded as txt files in the directory indicated in the start screen.
Blog for SAP technical guru's: SAP basis, SAP security and authorization, SAP ABAP, SAP Focused Run
ST01 and STAUTHTRACE transactions can be used for short term in-depth authorization traces. The problem is that these traces are very detailed and generate a lot of data.
For some use cases, you need to know what authorizations are needed for a user for longer period of time. Example: you have some background users with too many authorizations and your are tasked to reduce this. Then you want to enable a long term trace that records which authorizations are used by this user ID. You are not interested in how many times and when, but just need a complete list over a very long time (for example 2 months). Another example is when you are tasked to S_TABU_NAM full * authorization with actual table names. How to find out which tables are actually needed?
This is the goal of the STUSERTRACE: long term recording of authorization checks called including detailed table level.
The activation is described in OSS note 2220030 – STUSERTRACE: User trace for authorization checks. The first step is to switch parameter auth/auth_user_trace to value F. There is an option to set to Y for full, but don’t do this since then you might run into performance issues. F is the value where filtering happens.
As explained in OSS note 2220030 there is a minor performance impact. To limit the impact, use filtering.
Now start transaction STUSERTRACE to set the filters:
Choose the Change Filter button to add filters:
In this case we add the standard SAP workflow user to trace.
After you let the trace run, you can use the STUSERTRACE transaction to see which authorization checks were executed for this user ID:
STUSERTRACE will also capture detailed table access down to actual table level:
This means this transaction STUSERTRACE can also be used help replace * values in S_TABU_NAM with the actual tables.
Reorganization of data to clean up can be done using menu function Goto/Reorganize:
SAP has an online simplification item check available. This can be used for both a conversion to S4HANA as well as an upgrade of S4HANA to a higher version.
The readiness check inside the system focuses on data used and on mandatory items.
The online check also gives information on changes and potential new features you can use.
The online simplification item check can be found here. On the screen select your target version:
Here we simply take the highest version: S4HANA 2023. A new screen comes where you can select the source version and details of the feature pack of the target:
Click on Go to get the result list:
This check does not replace the mandatory readiness check inside the system. It can help you to prepare in planning phase of an upgrade.
To prepare for an S4HANA migration, you can use the SAP Readiness Check for SAP ERP Usage and Data Profiling. This analysis will provide data insights in your current ERP system usage.
The tool can be installed by applying OSS note 3112362 – SAP Readiness Check for SAP ERP Usage and Data Profiling. Transport this note to your productive system. The tool needs to have the actual production data. Start program RC_UDP_COLLECT_ANALYSIS_DATA:
Start with the Schedule Analysis. A batch job will collect the data. Once done, you can use the Display Analysis Data button to see the results. The Download Analysis Data allows you to download the data. The data needs to be uploaded to the SAP Readiness site.
After uploading to the SAP readiness site, give SAP about one hour to process the data.
Then the analysis result is available:
From left to right:
Zoom in on the module based data profiles:
For each part, you can now drill down to table level:
This way you can see if a certain S4HANA change will have much impact or not (due to amount of records).
In SUIM there is a function to show changes for users, but this transaction can be performing very poor with higher data volumes.
SAP has developed successor transaction SUIM_CHDOC_USER that is giving the same data, but faster.
It is import to know transaction SUIM_CHDOC_USER only works on HANA database. If you are not running on HANA, don’t continue.
Implementation steps:
Now you can start transaction SUIM_CHDOC_USER:
Input is the same as you were used to. Output as well. The new transaction is simply faster.
To get the function for mass role deletion, you first need to apply OSS note 3360981 – PFCGMASSDELETE: Mass deletion of roles.
After the note is applied transaction code PFCGMASSDELETE can be started:
The I information button provides the description of the functions of the program:
The SCC4 functions are described in OSS note 1723881 – Application of client-specific customizing settings to role maintenance.
All ABAP documentation is online available in your ABAP system. Start transaction ABAPDOCU:
The most used function is the traditional ABAP keyword documentation.
But the ABAPDOCU is constantly updated and also contains great background information on:

SAP IGS is a built in graphics server for ABAP.
To determine the version of IGS running start transaction SIGS (or run program GRAPHICS_IGS_ADMIN):
Press execute:
The RFC itself can be tested in SM59 with connection IGS_RFC_DEST.
Background OSS note: 995471 – IGS administration via ABAP.
To test the graphics start program BW_IGS_CHART_TEST. Output should be:
SQVI is a tool to quickly build ad-hoc queries.
Start transaction SQVI:
Enter a QuikView name and press create. Now choose the type (in this case we will make a table join):
First add the table:
And add the second table:
The join between the tables is in this simple cases created automatically. In more complex cases you have to define the join conditions yourself.
Press the back button to go back.
Now enter the output fields:
And the selection fields:
Save the SQVI query.
Now you can start to Execute the query:
Enter the input criteria and press execute to get the wanted results:
Bug fix OSS notes for SQVI:
SAP has a nice framework to handle interface errors: AIF (application integration framework).
The framework is quite old already but was not very popular. Not to the fact that it is not good (it is in fact quite good), but it is because it is a licensed product and too expensive for the value it brings.
The framework is now split into 2 parts:
For reference you can read the formal help file from SAP on activating AIF content.
Extract the content using SE38 report /AIF/CONTENT_EXTRACT.
Then start transaction /AIF/CUST to maintain the customizing for errors. The input is given on this SAP help page.
And define the error handling levels:
Transaction /AIF/ERR can be used for the error handling monitoring: